예제 #1
0
	def runTest( self ):

		context = Context( 'context' )
		context.start()

		listener = UacSubscriptionListener()
		listener.context = context

		subscription = UacSubscription( 'subscription0', listener, subscriptionSource='', user='******', resourceUri=Uri('bones', 'cave'), event='whats-to-eat', contentType=ContentType('food', 'xml'), expires=3600 )

		context.queue( Event( subscription.EVENT_SUBSCRIBE ), subscription )

		s = 'SIP/2.0 100 Trying\r\nTo: "Matt"<sip:matthew@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nCall-ID: abcd\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress='127.0.0.1', localPort=9000, remoteAddress='127.0.0.1', remotePort=9001 )
		context.queue( e, subscription )

		s = 'SIP/2.0 200 OK\r\nTo: "Matt"<sip:matthew@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nCall-ID: abcd\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress='127.0.0.1', localPort=9000, remoteAddress='127.0.0.1', remotePort=9001 )
		context.queue( e, subscription )

		context.queue( Event( subscription.EVENT_UNSUBSCRIBE ), subscription )

		s = 'SIP/2.0 200 OK\r\nTo: "Matt"<sip:matthew@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nCall-ID: abcd\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress='127.0.0.1', localPort=9000, remoteAddress='127.0.0.1', remotePort=9001 )
		context.queue( e, subscription )

		sleep( 0.5 )

		assert 1
예제 #2
0
	def runTest( self ):

		context = Context( 'context' )
		context.start()

		listener = TestListener()
		listener.context = context

		node = System( 'system0', listener )
		node.addListener( listener )

		node.process( Event( 'Start' ) )

		s = 'SUBSCRIBE sip:chloe@cave;treats SIP/2.0\r\nTo: "Matt"<sip:matthew@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nCall-ID: 12345\r\nCSeq: 16 SUBSCRIBE\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress=node.query( 'network.localAddress' ), localPort=node.query( 'network.localPort' ), remoteAddress=node.query( 'network.remoteAddress' ), remotePort=node.query( 'network.remotePort' ) )
		context.queue( e, node )
		sleep( 2 )
예제 #3
0
    def test(self):
        events = [Event('event0'), Event('event1'), Event('event2')]

        o = SampleObj(events)

        c = Context('context0')

        for event in events:
            future = c.queue(event, o, o)
        time.sleep(0.1)

        c.poll()
예제 #4
0
	def runTest( self ):
		context = Context( 'root' )
		context.start()

		listener = TestListener()
		listener.context = context

		node = System( 'system', listener )
		node.addListener( listener )

		context.queue( Event( System.EVENT_START ), node )

#		from message import *
		s = 'INVITE sip:[email protected] SIP/2.0\r\n' \
'Call-ID: abcde\r\nContent-Length: 136\r\nContent-Type: application/simple-message-summary\r\n\r\nMessages-Waiting: yes\r\nMessage-Account: sip:[email protected]\r\nvoice-message: 1/5(2/4)\r\nfax-message: 0/1\r\ntext-message: 3/7\r\n' \
'\r\n'
		message = Request( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message )
		context.queue( e, node )

		#context.queue( Event( System.EVENT_STOP ), node )
		context.stop()
예제 #5
0
    def test(self):
        events = [Event('event0'), Event('event1'), Event('event2')]

        o = SampleObj(events)

        c = Context('context0')
        c.start()

        for event in events:
            future = c.queue(event, o, o)
            #print future
            #future.cancel()
            #print future()
            #print future
        time.sleep(0.1)

        c.stop()