Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
fix IO::Async abuse - thanks leo
Browse files Browse the repository at this point in the history
  • Loading branch information
ara4n authored and Paul "LeoNerd" Evans committed Dec 2, 2014
1 parent 9f4abd5 commit 68cdcbd
Showing 1 changed file with 11 additions and 9 deletions.
20 changes: 11 additions & 9 deletions contrib/vertobot/bot.pl
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@
);
$loop->add( $bot_verto );

my $sessid = lc new Data::UUID->create_str();

my $bot_matrix = Net::Async::Matrix->new(
%MATRIX_CONFIG,
on_log => sub { warn "log: @_\n" },
Expand All @@ -79,20 +81,18 @@
$bot_matrix_rooms{$room->room_id} = $room;

# log in to verto on behalf of this room
my $sessid = lc new Data::UUID->create_str();
$bridgestate->{$room->room_id}->{sessid} = $sessid;

$room->configure(
on_message => \&on_room_message,
);

Future->wait_all(
send_verto_json_request("login", {
my $f = send_verto_json_request("login", {
'login' => $CONFIG{'verto-dialog-params'}{'login'},
'passwd' => $CONFIG{'verto-config'}{'passwd'},
'sessid' => $sessid,
}),
)->get;
});
$matrix->adopt_future($f);

# we deliberately don't paginate the room, as we only care about
# new calls
Expand Down Expand Up @@ -133,11 +133,12 @@ sub on_unknown_event
# XXX: collate using the right m= line - for now assume audio call
$offer =~ s/(a=rtcp.*[\r\n]+)/$1$candidate_block/;

send_verto_json_request("verto.invite", {
my $f = send_verto_json_request("verto.invite", {
"sdp" => $offer,
"dialogParams" => \%dp,
"sessid" => $bridgestate->{$room_id}->{sessid},
})->get;
});
$matrix->adopt_future($f);
}
else {
# ignore them, as no trickle ICE, although we might as well
Expand All @@ -149,10 +150,11 @@ sub on_unknown_event
}
elsif ($event->{type} eq 'm.call.hangup') {
if ($bridgestate->{$room_id}->{matrix_callid} eq $event->{content}->{call_id}) {
send_verto_json_request("verto.bye", {
my $f = send_verto_json_request("verto.bye", {
"dialogParams" => \%dp,
"sessid" => $bridgestate->{$room_id}->{sessid},
})->get;
});
$matrix->adopt_future($f);
}
else {
warn "Ignoring unrecognised callid: ".$event->{content}->{call_id};
Expand Down

0 comments on commit 68cdcbd

Please sign in to comment.