Example #1
0
        /// <summary>
        /// Issues an authentication response to an authentication challenge from FreeSwitch.
        /// </summary>
        /// <param name="eventSocket">The <seealso cref="InboundSocket"/> instance to operate on.</param>
        /// <param name="password">The password to pass to FreeSwitch.</param>
        /// <returns>A Task of <seealso cref="CommandReply"/>.</returns>
        public static Task <CommandReply> Auth(this InboundSocket eventSocket, string password)
        {
            if (password == null)
            {
                throw new ArgumentNullException("password");
            }

            return(eventSocket.SendCommand("auth {0}".Fmt(password)));
        }
Example #2
0
 /// <summary>
 /// The 'myevents' subscription allows your inbound socket connection to behave like an outbound socket connection.
 /// </summary>
 /// <remarks>
 /// It will "lock on" to the events for a particular uuid and will ignore all other events, closing the socket when
 /// the channel goes away or closing the channel when the socket disconnects and all applications have finished executing.
 /// https://freeswitch.org/confluence/display/FREESWITCH/mod_event_socket#mod_event_socket-SpecialCase-'myevents'
 /// Once the socket connection has locked on to the events for this particular uuid it will NEVER see any events that are
 /// not related to the channel, even if subsequent event commands are sent. If you need to monitor a specific channel/uuid
 /// and you need watch for other events as well then it is best to use a filter.
 /// </remarks>
 /// <param name="eventSocket">The <seealso cref="InboundSocket"/> instance to operate on.</param>
 /// <param name="uuid">The UUID of the Channel to operate on.</param>
 /// <returns>A Task of <seealso cref="CommandReply"/>.</returns>
 public static Task <CommandReply> MyEvents(this InboundSocket eventSocket, string uuid)
 {
     return(eventSocket.SendCommand("myevents {0} plain".Fmt(uuid)));
 }