public async Task Init(Context context, string userId) { _context = context; _agoraRtmHandler = new AgoraRtmHandler(); _agoraRtmHandler.OnSignalReceived += (signal) => { Log($"Signal received from {signal.RtcPeerId}"); OnSignalReceived?.Invoke(signal); }; _rtmClient = RtmClient.CreateInstance(_context, AgoraTestConstants.AgoraAPI, _agoraRtmHandler); var rtmToken = await AgoraTokenService.GetRtmToken(userId); var loginCallback = new ResultCallback(); loginCallback.OnSuccessAction += (obj) => { UserName = userId; OnLogin?.Invoke(true); Log("Login Success"); }; loginCallback.OnFailureAction += (err) => { OnLogin?.Invoke(false); Log("Login Fail"); }; _rtmClient.Login(rtmToken, userId, loginCallback); }
private async Task Login() { var account = AccountText.Text; AgoraRtm.Current = account; var token = await AgoraTokenService.GetRtmToken(account); AgoraRtm.RtmKit.LoginByToken(token, account, (status) => { if (status == Xamarin.Agora.AgoraRtmLoginErrorCode.Ok) { InvokeOnMainThread(() => { AgoraRtm.OneToOneMessageType = OfflineSwitch.On ? OneToOneMessageType.Offline : OneToOneMessageType.Normal; //getting offline messages var rtmDelegate = new RtmDelegate(); rtmDelegate.AppendMessage += (user, message) => AgoraRtm.AddOfflineMessage(message, user); AgoraRtm.UpdateKit(rtmDelegate); AgoraRtm.Status = LoginStatus.Online; PerformSegue("mainToTab", null); }); } }); }
private async Task DoLogin() { _isInChat = true; var token = await AgoraTokenService.GetRtmToken(_userId); _rtmClient.Login(token, _userId, _callbackResult); }
private async Task JoinChannel() { _progressBar.Visibility = ViewStates.Visible; var token = await AgoraTokenService.GetRtcToken(AgoraSettings.Current.RoomName); if (string.IsNullOrEmpty(token)) { _progressBar.Visibility = ViewStates.Gone; } else { IO.Agora.Api.Component.Constant.Engine.SetParameters("{\"che.video.mobile_1080p\":true}"); IO.Agora.Api.Component.Constant.Engine.SetClientRole(Constants.ClientRoleBroadcaster); if (AgoraSettings.Current.Role == AgoraRole.Listener) { IO.Agora.Api.Component.Constant.Engine.SetChannelProfile(Constants.ChannelProfileCommunication); IO.Agora.Api.Component.Constant.Engine.MuteLocalVideoStream(true); } else { IO.Agora.Api.Component.Constant.Engine.SetChannelProfile(Constants.ChannelProfileLiveBroadcasting); IO.Agora.Api.Component.Constant.Engine.SetVideoSource(new AgoraDefaultSource()); } IO.Agora.Api.Component.Constant.Engine.EnableVideo(); IO.Agora.Api.Component.Constant.Engine.JoinChannel(token, AgoraSettings.Current.RoomName, string.Empty, 0); // if you do not specify the uid, we will generate the uid for you } }
public void StartBroadcast(string channel) { Task.Run(async() => { var token = await AgoraTokenService.GetRtcToken(channel); _sharedAgoraEngine.JoinChannelByToken(token, channel, string.Empty, (uint)ExtensionConstants.SCREEN_SHARE_UID, new AgoraRtcChannelMediaOptions()); }); }
public async Task TokenPrivilegeWillExpire(AgoraRtcEngineKit engine, string token) { var newToken = await AgoraTokenService.GetRtcToken(AgoraSettings.Current.RoomName); if (!string.IsNullOrEmpty(newToken)) { _agoraKit.RenewToken(newToken); } }
public async Task OnTokenPrivilegeWillExpire(string token) { var newToken = await AgoraTokenService.GetRtcToken(AgoraSettings.Current.RoomName); if (!string.IsNullOrEmpty(token)) { IO.Agora.Api.Component.Constant.Engine.RenewToken(newToken); } }
private async Task JoinChannel() { var token = await AgoraTokenService.GetRtcToken(ChannelName); _agoraKit.JoinChannelByToken(token, ChannelName, string.Empty, 0, (s, i, k) => { _agoraKit.SetEnableSpeakerphone(true); UIApplication.SharedApplication.IdleTimerDisabled = true; }); }
private async Task JoinChannel() { var token = await AgoraTokenService.GetRtcToken(ChannelName); _agoraKit.JoinChannelByToken(token, ChannelName, string.Empty, 0, (s, i, k) => { _agoraKit.EnableAudio(); var devices = _agoraKit.EnumerateDevices(MediaDeviceType.AudioRecording); _agoraKit.SetDevice(MediaDeviceType.AudioRecording, devices[0].DeviceId); }); }
private async Task JoinChannel() { _progressBar.Visibility = ViewStates.Visible; var token = await AgoraTokenService.GetRtcToken(AgoraSettings.Current.RoomName); if (string.IsNullOrEmpty(token)) { _progressBar.Visibility = ViewStates.Gone; } else { AgoraEngine.JoinChannel(token, AgoraSettings.Current.RoomName, string.Empty, 0); // if you do not specify the uid, we will generate the uid for you } }
private async void JoinRtc() { LoadingIndicator.Hidden = false; var token = await AgoraTokenService.GetRtcToken(AgoraSettings.Current.RoomName); if (string.IsNullOrEmpty(token)) { //smth went wrong LoadingIndicator.Hidden = true; } else { _agoraKit.JoinChannelByToken(token, AgoraSettings.Current.RoomName, null, 0, JoiningCompleted); } }
public async Task JoinChannel() { LoadingIndicator.Hidden = false; var token = await AgoraTokenService.GetRtcToken(Channel); if (string.IsNullOrEmpty(token)) { LoadingIndicator.Hidden = true; } else { _agoraKit.JoinChannelByToken(token, Channel, null, 0, (arg1, arg2, arg3) => { LoadingIndicator.Hidden = true; }); } }
public async Task Init(string userId) { var rtmToken = await AgoraTokenService.GetRtmToken(userId); _rtmKit.LoginByToken(rtmToken, userId, (status) => { var success = status == AgoraRtmLoginErrorCode.Ok; OnLogin?.Invoke(success); if (success) { UserName = userId; var rtmDelegate = new RtmDelegate(); rtmDelegate.OnMessageReceived += OmMessageReceived; _rtmKit.AgoraRtmDelegate = rtmDelegate; } }); }
public async Task JoinChannel() { var dataSource = new RemoteVideosTableDataSource(_users); RemoteUsersTableView.DataSource = dataSource; RemoteUsersTableView.Delegate = new RemoteVideosTableDelegate(dataSource, _agoraKit); LoadingIndicator.Hidden = false; var token = await AgoraTokenService.GetRtcToken(Channel); if (string.IsNullOrEmpty(token)) { LoadingIndicator.Hidden = true; } else { _agoraKit.JoinChannelByToken(token, Channel, null, 0, (arg1, arg2, arg3) => { LoadingIndicator.Hidden = true; _localId = (uint)arg2; roomNameLabel.StringValue = $"Room name: {Channel}"; }); } }
private async Task JoinChannel() { var accessToken = await AgoraTokenService.GetRtcToken(ChannelName); _rtcEngine.JoinChannel(accessToken, ChannelName, string.Empty, 0); }