-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathtup.db
More file actions
5485 lines (5284 loc) · 228 KB
/
Copy pathtup.db
File metadata and controls
5485 lines (5284 loc) · 228 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
April 2009 U09SSS
www.dialogic.com
Dialogic® SS7 Protocols
TUP Programmer's Manual
2
Copyright and Legal Notice
Copyright © 1993-2009 Dialogic Corporation. All Rights Reserved. You may not reproduce this document in whole or in part without
permission in writing from Dialogic Corporation at the address provided below.
All contents of this document are furnished for informational use only and are subject to change without notice and do not represent a
commitment on the part of Dialogic Corporation or its subsidiaries ("Dialogic"). Reasonable effort is made to ensure the accuracy of the
information contained in the document. However, Dialogic does not warrant the accuracy of this information and cannot accept
responsibility for errors, inaccuracies or omissions that may be contained in this document.
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH DIALOGIC® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED,
BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN
A SIGNED AGREEMENT BETWEEN YOU AND DIALOGIC, DIALOGIC ASSUMES NO LIABILITY WHATSOEVER, AND DIALOGIC DISCLAIMS
ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF DIALOGIC PRODUCTS INCLUDING LIABILITY OR
WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY INTELLECTUAL
PROPERTY RIGHT OF A THIRD PARTY.
Dialogic products are not intended for use in medical, life saving, life sustaining, critical control or safety systems, or in nuclear facility
applications.
Due to differing national regulations and approval requirements, certain Dialogic products may be suitable for use only in specific
countries, and thus may not function properly in other countries. You are responsible for ensuring that your use of such products occurs
only in the countries where such use is suitable. For information on specific products, contact Dialogic Corporation at the address
indicated below or on the web at www.dialogic.com.
It is possible that the use or implementation of any one of the concepts, applications, or ideas described in this document, in marketing
collateral produced by or on web pages maintained by Dialogic may infringe one or more patents or other intellectual property rights
owned by third parties. Dialogic does not provide any intellectual property licenses with the sale of Dialogic products other than a
license to use such product in accordance with intellectual property owned or validly licensed by Dialogic and no such licenses are
provided except pursuant to a signed agreement with Dialogic. More detailed information about such intellectual property is available
from Dialogic's legal department at 9800 Cavendish Blvd., 5th Floor, Montreal, Quebec, Canada H4M 2V9. Dialogic encourages all
users of its products to procure all necessary intellectual property licenses required to implement any concepts or
applications and does not condone or encourage any intellectual property infringement and disclaims any responsibility
related thereto. These intellectual property licenses may differ from country to country and it is the responsibility of
those who develop the concepts or applications to be aware of and comply with different national license requirements.
Dialogic, Dialogic Pro, Brooktrout, Diva, Cantata, SnowShore, Eicon, Eicon Networks, NMS Communications, NMS (stylized), Eiconcard,
SIPcontrol, Diva ISDN, TruFax, Exnet, EXS, SwitchKit, N20, Making Innovation Thrive, Connecting to Growth, Video is the New Voice,
Fusion, Vision, PacketMedia, NaturalAccess, NaturalCallControl, NaturalConference, NaturalFax and Shiva, among others as well as
related logos, are either registered trademarks or trademarks of Dialogic Corporation or its subsidiaries. Dialogic's trademarks may be
used publicly only with permission from Dialogic. Such permission may only be granted by Dialogic's legal department at 9800
Cavendish Blvd., 5th Floor, Montreal, Quebec, Canada H4M 2V9. Any authorized use of Dialogic's trademarks will be subject to full
respect of the trademark guidelines published by Dialogic from time to time and any use of Dialogic's trademarks requires proper
acknowledgement.
The names of actual companies and products mentioned herein are the trademarks of their respective owners.
Publication Date: April 2009
Document Number: U08SSS, Issue 10
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
3
Contents
Revision History ........................................................................................................... 8
1 Introduction ........................................................................................................ 9
1.1 Abbreviations ......................................................................................................................... 9
1.2 Related Documentation.......................................................................................................... 10
1.3 Feature Overview .................................................................................................................. 10
2 General Description ........................................................................................... 11
2.1 Module Overview .................................................................................................................. 11
2.2 Module Configuration............................................................................................................. 11
3 Internal Data Structures ................................................................................... 12
3.1 Global Data Structure ............................................................................................................ 12
3.2 Circuit Group Data Structure .................................................................................................. 12
3.3 Per Circuit Data Structure ...................................................................................................... 12
4 Interface To System Services ............................................................................ 13
4.1 System Functions ................................................................................................................. 13
4.2 Timer Operation ................................................................................................................... 13
5 Interface To Message Transfer Part .................................................................. 14
6 Call Control Interface ........................................................................................ 15
6.1 Message Format ................................................................................................................... 16
6.1.1 TUP-Transmit Request .............................................................................................. 16
6.1.2 TUP-Receive Indication ............................................................................................. 17
6.2 User data format for TX_REQ and RX_IND primitives ................................................................. 18
6.3 Call control primitives, user application to TUP module .............................................................. 21
6.3.1 Alerting request ....................................................................................................... 22
6.3.2 Backward information request ................................................................................... 23
6.3.3 Backward information response ................................................................................. 23
6.3.4 Charging request ..................................................................................................... 24
6.3.5 Charging acknowledgement request ........................................................................... 25
6.3.6 Circuit seized request ............................................................................................... 25
6.3.7 Collection charging request ....................................................................................... 25
6.3.8 Continuity report request .......................................................................................... 26
6.3.9 End-to-end information request ................................................................................. 26
6.3.10 Forward information request ...................................................................................... 26
6.3.11 Forward transfer request ........................................................................................... 26
6.3.12 Release request ....................................................................................................... 27
6.3.13 Release response ..................................................................................................... 28
6.3.14 Resume request ....................................................................................................... 28
6.3.15 Setup request .......................................................................................................... 29
6.3.16 Setup response ........................................................................................................ 30
6.3.17 Suspend request ...................................................................................................... 30
6.3.18 Tariff change request ................................................................................................ 30
6.3.19 User-to-user information request ............................................................................... 31
6.4 Call control primitives, TUP module to user application .............................................................. 32
6.4.1 Alerting indication .................................................................................................... 32
6.4.2 Backward information indication ................................................................................ 33
6.4.3 Backward information confirmation ............................................................................ 34
6.4.4 Calling party clear indication ...................................................................................... 34
6.4.5 Charging indication .................................................................................................. 35
Contents
4
6.4.6 Charging acknowledgement indication ........................................................................ 35
6.4.7 Circuit seized indication ............................................................................................ 36
6.4.8 Collection charging indication .................................................................................... 36
6.4.9 Continuity report indication ....................................................................................... 36
6.4.10 End-to-End Information Indication ............................................................................. 37
6.4.11 Forward information indication .................................................................................. 37
6.4.12 Forward transfer indication ....................................................................................... 37
6.4.13 Release indication .................................................................................................... 38
6.4.14 Release confirmation ................................................................................................ 38
6.4.15 Resume indication .................................................................................................... 38
6.4.16 Setup indication ....................................................................................................... 39
6.4.17 Setup confirmation ................................................................................................... 40
6.4.18 Suspend indication ................................................................................................... 40
6.4.19 Tariff change indication ............................................................................................ 41
6.4.20 User-to-user information indication ............................................................................ 41
6.5 Mapping Call Control Primitives to Network Messages ................................................................ 42
6.6 Parameter Definitions ............................................................................................................ 44
6.6.1 Access Transport ..................................................................................................... 46
6.6.2 Additional calling party information ............................................................................ 46
6.6.3 Additional cause information ..................................................................................... 47
6.6.4 Additional routing information ................................................................................... 47
6.6.5 Backward call indicators ............................................................................................ 48
6.6.6 Called party number ................................................................................................. 49
6.6.7 Calling party’s category ............................................................................................ 51
6.6.8 Calling party number ................................................................................................ 51
6.6.9 Cause indicators ...................................................................................................... 53
6.6.10 Charging information ................................................................................................ 55
6.6.11 Closed user group interlock code ............................................................................... 55
6.6.12 Continuity indicators ................................................................................................ 56
6.6.13 Event information .................................................................................................... 56
6.6.14 Forward call indicators .............................................................................................. 57
6.6.15 Generic number ....................................................................................................... 58
6.6.16 IAI national use octet ............................................................................................... 60
6.6.17 Incoming trunk and transit identity ............................................................................ 61
6.6.18 Information indicators .............................................................................................. 61
6.6.19 Information request indicators ................................................................................... 62
6.6.20 Message number field ............................................................................................... 63
6.6.21 Nature of connection indicators .................................................................................. 63
6.6.22 Number of metering pulses ....................................................................................... 64
6.6.23 Optional forward call indicators .................................................................................. 65
6.6.24 Original called number .............................................................................................. 65
6.6.25 Packet charging ....................................................................................................... 67
6.6.26 Redirection information ............................................................................................ 67
6.6.27 Signaling point code ................................................................................................. 68
6.6.28 SSUTR2 Additional called party information ................................................................. 68
6.6.29 SSUTR2 Further redirection information ...................................................................... 70
6.6.30 Subsequent number ................................................................................................. 71
6.6.31 Suspend/resume indicator ........................................................................................ 71
6.6.32 Tariff indicators ....................................................................................................... 72
6.6.33 Tariff factor 72
6.6.34 Time indicator ......................................................................................................... 73
6.6.35 Transmission medium requirement ............................................................................ 73
6.6.36 TUP information indicator .......................................................................................... 74
6.6.37 TUP Information request indicators ............................................................................ 75
6.6.38 User service information ........................................................................................... 75
6.6.39 User to user information ........................................................................................... 76
6.7 Use of call control primitives .................................................................................................. 77
6.7.1 Call clearing procedure ............................................................................................. 77
6.7.2 Call collision procedure ............................................................................................. 77
7 Management Interface ...................................................................................... 78
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
5
7.1 Circuit Group Supervision Control Request ............................................................................... 79
7.2 Circuit Group Supervision Control Confirmation ........................................................................ 81
7.3 Circuit Group Supervision Control Indication ............................................................................. 83
7.4 Remote Point Code Status Indication ....................................................................................... 84
7.5 Local Overload Request ......................................................................................................... 85
8 Non-Primitive Interface .................................................................................... 87
8.1 Configuration Request ........................................................................................................... 87
8.2 Configure Circuit Group Request ............................................................................................. 92
8.3 Change Configure Circuit Group Request .................................................................................. 98
8.4 Configure Timers Request .................................................................................................... 100
8.5 End Circuit Group Request ................................................................................................... 107
8.6 Read TUP RAM Request ....................................................................................................... 108
8.7 Read Circuit Group Request .................................................................................................. 109
8.8 Read Circuit Request ........................................................................................................... 110
8.9 Read Revision Request ........................................................................................................ 111
8.10 Set Trace Mask Request ....................................................................................................... 112
8.11 Set Selective Trace Mask Request ......................................................................................... 115
8.12 Read Circuit Group Circuit Status Request .............................................................................. 116
8.13 Read Circuit Group Data Request .......................................................................................... 119
8.14 Read Circuit Group Identity Request ...................................................................................... 120
8.15 Maintenance Event Indication ............................................................................................... 121
8.16 Software Event Indication .................................................................................................... 124
8.17 Management Event Indication .............................................................................................. 125
8.18 Trace Event Indication ......................................................................................................... 127
8.19 Selective Trace Event Indication ........................................................................................... 128
Appendix A. 130
A.1 Message Type Table ............................................................................................................ 130
Appendix B. 132
B.1 Timer Services.................................................................................................................... 132
B.2 Keep Time ......................................................................................................................... 132
B.3 Timer Expiry ...................................................................................................................... 133
Appendix C. 134
C.1 Chinese National Telephone Network (GF001-9001) ................................................................ 134
C.2 Point code size ................................................................................................................... 134
C.3 Subscriber Local Busy (SLB) message ................................................................................... 134
C.4 Subscriber Trunk Busy (STB) message .................................................................................. 134
C.5 Calling party clear (CCL) message ......................................................................................... 135
C.6 Mapping Call Control Primitives to Network Messages .............................................................. 136
C.7 French national telephone network (SSUTR2) ......................................................................... 138
C.8 Mapping call control primitives to network messages ............................................................... 140
C.9 Parameters definitions ......................................................................................................... 142
C.9.1 Additional calling party information .......................................................................... 142
C.9.2 Backward call indicators .......................................................................................... 143
C.9.3 Called party number ............................................................................................... 144
C.9.4 Calling party’s category .......................................................................................... 145
C.9.5 Calling party number .............................................................................................. 145
C.9.6 Cause indicators .................................................................................................... 146
C.9.7 Closed User Group interlock Code ............................................................................ 147
C.9.8 Forward call indicators ............................................................................................ 147
C.9.9 Information request indicators ................................................................................. 148
C.9.10 Nature of connection indicators ................................................................................ 148
C.9.11 Optional Forward Call Indicators .............................................................................. 148
C.9.12 Original Called Number ........................................................................................... 148
C.9.13 Transmission Medium Requirement. ......................................................................... 148
Contents
6
C.10 Circuit Group Supervision Control Request & Indication messages ............................................ 149
Tables
Table 1: Call control primitives sent from user application to TUP module .............................................. 19
Table 2: Call control primitives sent from TUP module to user application .............................................. 20
Table 3: Mapping for operation on circuit groups configured for ITU environments .................................. 43
Table 4: Parameters for use in messages between the local user and TUP ............................................. 45
Table 5: Message types ................................................................................................................. 131
Table 6: Mapping of call control primitives to network messages ........................................................ 137
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
7
Revision History
8
Revision History
Issue Date Description
1 10-Jul-95 Initial version.
2 02-Aug-95 Values for primitive and parameter types
corrected.
3 10-Dec-97 Details of multiple TUP instance operation.
Details of multiple host operation.
Call clearing modified to support the Application controlled release mechanism as
default.
Use of the most significant bit of the call reference to indicate an outgoing call
removed.
Initial support for French TUP added.
4 27-Jan-98 Full support for French TUP (SSUTR2) added.
5 30-Jun-98 Description of new Application Controlled Release mechanism added.
New parameters added to Backward information request, Backward information
indication, Backward information response, Backward information confirmation.
Set Trace Mask request, Trace Event indication, End Circuit Group request, Read
Circuit Group Circuit Status request messages added.
Minor editorial corrections.
6 11-Mar-99 Addition of Circuit Seized Indication primitive for use with incoming continuity test
calls.
MPM message added.
New parameter suspend/resume indicator added.
Read Revision Request message documentation added.
Addition of User Service Information and Access Transport parameters.
MTP messages in Appendix 1 removed.
Minor editorial corrections.
7 09-Jul-01 Addition of Circuit Seized Request for use
with outgoing continuity test calls.
New module and group options added.
Addition of selective tracing mechanism.
8 16-Jul-03 Branding changed: references to Septel and System7 removed.
9 12-May-04 New messages Change Circuit Group Configuration Request, Read Circuit Group
Data Request and Read Circuit Group Identity Request added.
Options TUPF_24PC, TUPF_PC_SIZE and TUPGOP_24PC updated.
Added Option TUPF_16CID.
10 02-Apr-09 Branding changed, new format applied.
Note: The current version of this guide can be found at:
http://www.dialogic.com/support/helpweb/signaling
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
9
1 Introduction
The TUP module is a portable software implementation of the Signaling
System Number 7, Telephone User Part (TUP). This is the Programmer's
Manual, intended for users who choose to develop their own application
programs that will interface with and use the functionality provided by the
TUP module.
In addition to supporting TUP functionality as specified by ITU
recommendations, the module can be configured to support French SSUTR2
and Chinese GF001-9001 TUP operation.
The module uses the services provided by the Message Transfer Part (MTP) to
exchange signaling messages with remote signaling points. It supports a
number of both way telephony circuits. The circuits can be divided into a
number of circuit groups, and each group may be assigned different
attributes allowing the user considerable flexibility in configuring the module.
The TUP module is event driven and uses standard structured message types.
It is intended to be used in conjunction with the MTP module, either on
Dialogic® hardware platforms or on user supplied hardware. However, the
software is portable and the well-defined message structure and the
independent nature of the module allow the TUP module to be used with
alternative MTP implementations if required.
This manual provides an overview of the internal operation of the TUP
module, defines the structure of all messages that can be sent to, or issued
by, the module and also describes all the configuration parameters.
1.1 Abbreviations
ITU The International Telecommunication Union (Previously CCITT)
DPC Destination Point Code
MCI Malicious Call Identification
MTP Message Transfer Part
OPC Originating Point Code
SIO Service Information Octet
SIF Signaling Information Field
SS7 Signaling System Number 7
SSF Sub-Service Field
SSUTR2 Sous-Système Utilisateur Téléphonie R2 (French TUP)
TUP Telephony User Part
Introduction
10
1.2 Related Documentation
[1] ITU recommendations Q.721 - Q.725 (TUP)
[2] French SSUTR2 (Système de signalisation par canal sémaphore CCITT
o.7) Specification VN4, VN5 & VN6
[3] China TUP Specification GF001-9001
[4] Dialogic® DSI Software Environment Programmer's Manual
[5] Dialogic® DSI MTP3 Programmer’s Manual
1.3 Feature Overview
Key features of the TUP module include:
• Implementation of ITU recommendation Q.721 - Q.724 (Blue book 1988)
• Configuration options on a per circuit group basis
• User interface common with other Dialogic® SS7 Protocols
• Message oriented interface
• Support for both en-block and overlap address signaling
• Full user control of Circuit supervisory functions - Reset, Blocking &
Unblocking
• Support for incoming continuity recheck test calls
• Support for circuit group as well as individual circuit supervision
messages
• Support for 14 bit and 24 bit Signaling Point Codes
• Optional support for French TUP specified by SSUTR2 VN4/VN5/VN6
• Optional support for Chinese TUP specified by GF001-9001
• Debug tracing of messages exchanged with the user and with MTP
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
11
2 General Description
2.1 Module Overview
The TUP module implements the Telephony User Part functionality as defined
in ITU recommendations Q.721 - Q.724. The module interface is message
based. The module reads messages from a single message input queue and
sends responses and indications to the message input queues of the other
modules in the system.
The application interface uses primitives based on the ITU-T ISDN User Part
(ISUP) formats and codes (specified in ITU-T Recommendation Q.763), in
common to other Dialogic® SS7 protocols. This allows the same user
application to interface with other telephony user parts as required.
Each circuit is identified internally by a logical Circuit Identifier (cid). Circuit
Identifiers range from 0 up to one less than the total number of circuits
supported. A circuit must be assigned to a circuit group before it can be used.
Circuit groups allow a number of circuits to be configured with common
attributes. They are identified by the logical Group Identifier (gid) which
ranges from 0 to one less than the total number of circuit groups supported.
The Circuit Identification Code (CIC) of the first circuit in the group and the
Circuit Identifier (cid) that will be used for this circuit are defined for each
circuit group. Further circuits may be included in the group providing that the
CIC of the last circuit is no more than 31 greater than the first CIC. The
circuits do not need to lie in a contiguous block. The Circuit Identifier cid for
each additional circuit will have the same offset from the first cid as the CIC
has from the first CIC.
All protocol primitives between the application and the TUP module use a Call
Reference (call_ref) to identify the circuit used for the call. The call reference
is identical to the Circuit Identifier (cid) with the exception that for messages
issued by the TUP module relating to outgoing calls the most significant bit of
the call_ref is set to one when the TUP module is configured for 32768
circuits or less, and the TUPF_16CID flag is set to 0. In all other cases (more
than 32768 circuits configured, or TUPF_16CID flag set to 1), the cid is
identical to the call_reference.
Note: This feature is retained for backwards compatibility; however, it is planned that
the feature will be removed in a future release, in which case the call_ref will be
identical to the cid. The TUP module now ignores the setting of the most
significant bit of the call_ref, and it is recommended that existing applications
which placed significance on this bit be modified to ignore it also.
2.2 Module Configuration
The user configures the module for operation in two stages. The first
message sent to the module must be a global configuration message. This
configures environment dependent parameters. In general, these parameters
will be fixed for any single application. Optionally, a configure timers message
may be sent at this stage.
Each circuit group must then be configured with a configuration message
before attempting to originate or accept calls.
Internal Data Structures
12
3 Internal Data Structures
This chapter describes the internal data structures used by the TUP module.
This description is intended to assist the user in understanding the operation
of the module. It is not considered necessary to acquire detailed knowledge
of these structures in order to use the module.
3.1 Global Data Structure
The entire data storage used by the module is contained in a single
contiguous data structure. This structure contains global configuration
settings, per circuit storage, circuit group configuration data, and per-call
storage all relating to operation of the TUP protocol. It also contains internal
event queues, timer control structures and internal buffers for message
processing.
3.2 Circuit Group Data Structure
Each circuit group has a data structure within the global data structure which
contains the user supplied configuration parameters for the circuit group (e.g.
Signaling Point Codes, Circuit Identification and Configuration Options). The
information in the circuit group data structure applies to all circuits in the
circuit group.
3.3 Per Circuit Data Structure
Each circuit has a data structure within the global data structure which is
used to store the current state of state machines associated with the circuit
and any current call details.
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
13
4 Interface To System Services
4.1 System Functions
In addition to the primitive interface and the management interface to the
TUP module (which are described in later sections) the module requires a few
basic system services to be supplied by the underlying operating system. This
functionality is usually supplied by the appropriate Development package.
The following functions are required for inter-task communication:
GCT_send Sends a message to another task.
GCT_receive Accept next message from input event queue, blocking
the task if no message is ready.
GCT_grab As receive but not blocking if no message is ready.
The following functions are required for allocation of inter-task messages:
getm Allocate a message.
relm Release a message.
4.2 Timer Operation
In order to provide internal implementation of the TUP protocol timers the
module needs to receive a periodic timer tick message. This is usually
achieved using either the Enhanced Driver Module or the Timer module in
which case the following messages are used by the TUP module:
KEEP_TIME Issued by TUP module to initialize the timer
services
TM_EXP Issued by the timer module to notify of
time-out.
The format of these messages is described in Appendix B.
The user should note that although the timer functionality is usually provided
by the supplied timer module, the timer functionality required by the TUP
module is very basic (just a single message being issued on a periodic basis).
In most cases, it is not difficult to implement this functionality using the users
own choice of operating environment if required.
Interface To Message Transfer Part
14
5 Interface To Message Transfer Part
The TUP module communicates with the Message Transfer Part (MTP) using
the following primitives, all of which are defined in ITU Recommendation
Q.704:
MTP-TRANSFER-REQ Transmit request to MTP.
MTP-TRANSFER-IND Receive indication from MTP.
MTP-PAUSE Point code unavailable indication from MTP.
MTP-RESUME Point code available indication from MTP.
MTP-STATUS Signaling point congested or remote user
unavailable indication from MTP.
The message format used to convey these primitives is defined in the
Dialogic® DSI MTP3 Programmer’s Manual.
The TUP module is usually used in conjunction with the MTP module.
However, the use of primitives in accordance with Q.704 ensures that it can
also be integrated with other MTP implementations as and when required.
To provide further flexibility the TUP module supports the use of either
T_FRAMEs and R_FRAMEs or the use of MSGs for MTP-TRANSFERs between
the TUP and MTP.
T_FRAMES and R_FRAMES are most useful when the TUP module is running
on the same processor as the MTP3 module, whereas MSGs are generally
used when TUP module is running on a different processor than the one used
for the MTP.
A module configuration option (TUPF_TFRM) allows the user to select between
sending T_FRAMEs or sending MSGs. Receipt of both R_FRAMEs and MSGs is
supported in either mode.
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
15
6 Call Control Interface
The call control interface allows protocol primitive messages to be exchanged
between the local user and the TUP module. All primitives at the call control
interface are passed by sending messages between the modules. One
message type is used to send request messages from the user to the TUP
module, whereas a second message type is used to send indications in the
other direction.
The message types are:
CAL_MSG_TX_REQ Conveys primitive from local user to TUP.
CAL_MSG_RX_IND Conveys primitive from TUP to local user.
The basic structure of each message (irrespective of the message type) is the
same. The message contains a message header, the length of the user data
and the user data. The message must be contained in a single buffer that
should be allocated by the sending module (using the getm function) and
either released (using the relm function) or passed to another module by the
receiving module. The getm and relm functions are described in section 4,
Interface To System Services.
Call Control Interface
16
6.1 Message Format
6.1.1 TUP-Transmit Request
Synopsis:
Protocol message sent from the local user to the TUP module for subsequent
transmission to the network.
Message Format:
MESSAGE HEADER
Field Name Meaning
type CAL_MSG_TX_REQ (0xc700)
id call_ref
src Sending module ID
dst TUP module ID
rsp_req 0
class 0
status 0
err_info 0
len Number of bytes in parameter area
PARAMETER AREA
Offset Size Name
0 1 Primitive type octet.
1 len - 2 Parameters in Name-Length-Data format.
len - 1 1 Set to zero indicating end of message
Description:
This message is used by the application to send primitives to the TUP module
for transmission to the network. All parameters in the parameter area are
formatted in Name-Length-Data format and are encapsulated between the
Primitive type octet and the zero terminator octet. The detailed encoding of
the parameter area is described in later sections.
The id field in the message header is the call_ref used to identify the circuit
or call to which the message refers. Currently, when 32768 circuits or less
are configured, the most significant bit of the call_ref is ignored by the TUP
module and the remaining bits map directly to the Circuit Identifier cid so the
valid range for call_ref is from 0 to one less than the number of circuits
supported. If more than 32768 circuits are configured, then the call_ref is
identical to the cid.
Note: Earlier revisions of the TUP module required the most significant bit of the
call_ref to be set in all messages relating to outgoing calls.
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
17
6.1.2 TUP-Receive Indication
Synopsis:
Protocol message issued by the TUP module to the local user to indicate
receipt of TUP message information.
Message Format:
MESSAGE HEADER
Field Name Meaning
type CAL_MSG_RX_IND (0x8701)
id call_ref
src TUP module ID
dst User module ID
rsp_req 0
class 0
status 0
err_info 0
len Number of bytes in parameter area
PARAMETER AREA
Offset Size Name
0 1 Primitive type octet.
1 len - 2 Parameters in Name-Length-Data format.
len - 1 1 Set to zero indicating end of message
Description:
This message is issued by the TUP module to advise the application of
messages received from the network by the TUP module. All parameters in
the parameter area are formatted in Name-Length-Data format and are
encapsulated between the Primitive type octet and the zero terminator octet.
The detailed encoding of the parameter area is described in later sections.
The id field in the message header is the call_ref used to identify the circuit
or call to which the message refers. Currently, when 32768 circuits or less
are configured and the TUPF_16CID flag is set to 0, the most significant bit of
the call_ref is set to 1 by the TUP module for all messages relating to
outgoing calls and the remaining bits map directly to the Circuit Identifier cid.
If 32768 circuits or less are configured and the TUPF_16CID flag is set to 1,
or if more than 32768 circuits are configured, then the call_ref is identical to
the cid. In the future call_ref will be made identical to the Circuit Identifier
cid.
Note: Earlier revisions of the TUP module required the most significant bit of the
call_ref to be set in all messages relating to outgoing calls. To allow for
interworking with earlier application software which make use of this bit, the TUP
Call Control Interface
18
module continues to set the bit in all messages relating to outgoing calls for
configurations with 32768 circuits or less, when the TUPF_16CID flag has been set
to 0. It is recommended that existing applications be modified to ignore the
setting of the most significant bit.
6.2 User data format for TX_REQ and RX_IND
primitives
The data in the parameter area of transmit request and receive indication
messages contains the primitive type and the primitive parameters. The first
byte in the parameter area is the primitive type octet and the last byte is a
zero byte to indicate that there are no further parameters in the parameter
area. Any parameters associated with the message are placed between the
primitive type octet and the final (zero) byte. The parameter area is therefore
formatted as follows:
Primitive Type Parameter Parameter Parameter Zero
The parameters may be placed in any order. The first byte of a parameter is
the parameter name, the second byte is the length of the parameter data to
follow (excluding the parameter name and the length byte itself), this is
followed by the parameter data. Each parameter is therefore formatted as
follows:
Name Length Data
1 byte 1 byte “Length” bytes (1 to 255)
Within each message, there are mandatory parameters which must always be
present and optional parameters which may or may not be present. In some
cases, optional parameters may have default values which are inserted by the
TUP module if not provided by the user as described in the parameter
specification.
The following call control primitives may be sent from the user application to
the TUP module:
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
19
Primitive Mnemonic Value
(dec) Value (hex)
Alerting Request CALPN_ALERT_REQ 6 0x06
Backwards Information Request CALPN_BINFO_REQ 3 0x03
Backwards Information Response CALPN_BINFO_RESP 4 0x04
Charging Request υ[2] CALPN_TAX_REQ 49 0x31
Charging Acknowledgement Request
υ[2] CALPN_TXA_REQ 202 0xca
Circuit Seized Request CALPN_CCT_SZE_REQ 199 0xc7
Collection Charging Request [2], [3] CALPN_MPM_REQ
CALPPN_ITX_REQ
201 0xc9
Continuity Report Request CALPN_COT_REQ 5 0x05
End to End Information Request υ[2] CALPN_MCE_REQ 200 0xc8
Forward Information Request [1] CALPN_FINFO_REQ 2 0x02
Forward Transfer Request CALPN_FOT_REQ 8 0x08
Release Request CALPN_RELEASE_REQ 12 0x0c
Release Response CALPN_RELEASE_RESP 16 0x10
Resume Request CALPN_RESUME_REQ 14 0x0e
Setup Request CALPN_SETUP_REQ 1 0x01
Setup Response CALPN_SETUP_RESP 9 0x09
Suspend Request CALPN_SUS_REQ 13 0x0d
Tariff Change Request υ[2] CALPN_CHT_REQ 203 0xcb
User to User Information Request υ[2] CALPN_MUU_REQ 45 0x2d
Table 1: Call control primitives sent from user application to TUP module
Primitives marked [1] are only for use with circuit groups configured for ITU
mode.
Primitives marked υ[2] are only for use with circuit groups configured for
SSUTR2 mode. See appendix 4 related to SSUTR2.
Primitives marked [3] are only for use with circuit groups configured for China
mode. See appendix 3.
Primitives marked υ[2], [3] are for use with circuit groups configured only for
SSUTR2 or China TUP mode.
All other primitives may be used for any version of TUP.
The following primitives are issued by the TUP module to the user application:
Call Control Interface
20
Primitive Mnemonic Value
(dec) Value (hex)
Alerting Indication CALPN_ALERT_IND 6 0x06
Backward Information Indication CALPN_BINFO_IND 3 0x03
Backward Information Confirmation CALPN_BINFO_CONF 4 0x04
Calling Party Clear Indication [3] CALPN_CCL_IND 204 0xcc
Charging Indication [2] CALPN_TAX_IND 49 0x31
Charging Acknowledgement Indication
υ[2] CALPN_TXA_IND 202 0xca
Circuit Seized Indication CALPN_CCT_SZD_IND 199 0xc7
Collection Charging Indication υ[2] [3] CALPN_ITX_IND
CALPPN_MPM_IND 201 0xc9
Continuity Report Indication CALPN_COT_IND 5 0x05
End to End Information Indication υ[2] CALPN_MCE_IND 200 0xc8
Forward Information Indication [1] CALPN_FINFO_IND 2 0x02
Forward transfer Indication CALPN_FOT_IND 8 0x08
Release Indication CALPN_RELEASE_IND 12 0x0c
Release Confirmation CALPN_RELEASE_CONF 16 0x10
Resume Indication CALPN_RESUME_IND 14 0x0e
Setup Indication CALPN_SETUP_IND 1 0x01
Setup Confirmation CALPN_SETUP_CONF 9 0x09
Suspend Indication CALPN_SUS_IND 13 0x0d
Tariff Change Indication υ[2] CALPN_CHT_IND 203 0xcb
User to User Information Indication
υ[2] CALPN_MUU_IND 45 0x2d
Table 2: Call control primitives sent from TUP module to user application
Primitives marked [1] are only for use with circuit groups configured for ITU
mode.
Primitives marked υ[2] are only for use with circuit groups configured for
SSUTR2 mode.
Primitives marked [3] are only for use with circuit groups configured for China
mode.
Primitives marked υ[2] [3] are for use with circuit groups configured only for
SSUTR2 or China TUP mode.
All other primitives may be used for any version of TUP.
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
21
6.3 Call control primitives, user application to TUP
module
The following sections detail the parameters associated with each primitive
for use in an ITU compatible environment. The parameters are categorized
into classes, this definition having local significance only to the TUP module
call control interface.
The TUP module may be used in environments compatible with other
recommendations.
Appendix C details use with Chinese GF001-9001.
0 details use with the French SSUTR2 VN5/VN6.
Key
M Mandatory This parameter must be included in the primitive by the user otherwise
the primitive will be rejected by the TUP module.
O Optional This parameter may be excluded from the primitive issued by the user.
It provides optional additional functionality.
Where this parameter is mandatory in the TUP message sent to the
network, a default value will be inserted by the TUP module.
Default parameter values are indicated thus:
[default value].
Unless otherwise stated, all parameters are valid for circuit groups
configured for ITU operation.
Where appropriate, notes are included for parameter use on circuit
groups configured for other environments.
Call Control Interface
22
6.3.1 Alerting request
The alerting request primitive is issued by the application for an incoming call
to indicate that a valid called party address has been received and allows
various indications in the backwards direction (i.e., subscriber line status). It
corresponds to the TUP Address Complete Message (ACM).
Alerting request
Parameter Class Comments
Primitive type octet M Value = 6 (0x06)
Backward call indicators O Used to set :
called party’s category
[ordinary subscriber]
called party status
[subscriber free]
charging status
[charge]
interworking indicator
[no interworking]
incoming echo suppressor indicator
[incoming half echo control device not
included]
Event information O Used to indicate call forwarding
[call not forwarded is assumed]
Not used in SSUTR2 mode
SSUTR2 Additional Called Party
Information. O SSUTR2 mode only
Access Transport O SSUTR2 mode only
User to User Information O SSUTR2 mode only
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
23
6.3.2 Backward information request
This primitive allows the user to request additional information about an
incoming call during call setup. This will cause a TUP General Request
Message (GRQ) to be sent in the backwards direction.
Backward information request
Parameter Class Comments
Primitive type octet M Value = 3 (0x03)
Information request indicators M Used to request:
Holding
Malicious call identification
Calling party category
Calling line identity
SSUTR2 : only CPC and CLI may be
requested
TUP Information request
indicators O Used to request:
Outgoing half echo suppressor
Original called number
Not used in SSUTR2
6.3.3 Backward information response
This primitive allows the user to indicate the availability of facilities that were
requested in an information request indication primitive previously received
during outgoing call setup. This primitive will cause a TUP General Forwards
Setup Message (GSM) to be sent to the network.
Backward information response
Parameter Class Comments
Primitive type octet M Value = 4 (0x04)
Nature of connection indicators O Used to indicate:
outgoing half echo suppresser status
[outgoing half echo suppresser not
included]
Not used in SSUTR2
Information indicators M Indicates:
calling party address availability
calling party category availability
holding status
Not used in SSUTR2
TUP information indicators O Indicates:
MCI status
[MCI not provided]
original called number availability
[original called number not included ]
incoming trunk & transit exchange
identity availability
[incoming trunk and transit exchange
Call Control Interface
24
identity not provided]
Not used in SSUTR2
Calling party’s category O [ordinary calling subscriber]
Calling party number O calling party number and presentation
restricted indicator
Incoming trunk & transit exchange
identity O Provides id of the transit exchange and of the incoming trunk
Not used in SSUTR2
Original called number O Provides original called number
Not used in SSUTR2
6.3.4 Charging request
Only for use with circuit groups configured for SSUTR2 operation.
The charging request primitive is issued by the application for an incoming
call before answer and provides information about how the call should be
charged.
It corresponds to the SSUTR2 Charging Message (TAX).
Charging request
Parameter Class Comments
Primitive type octet M Value = 49 (0x31)
Packet charging (current tariff) O Number of charging units (from 0 to 15)
on called party answer (current tariff)
Tariff indicator (current tariff) O Gives the tariff scale value for the
current tariff (from 0 to 15)
Tariff factor (current tariff). O Number from 1 to 255 which multiplied
by the tariff scale of the tariff indicators
gives the charging period (in second) to
charge the call
Time indicator O Indicates the time when the next
change in tariff will occur
Packet charging (next tariff) O Number of charging units (from 0 to 15)
on called party answer (next tariff)
Tariff indicator
(next tariff)
O Gives the tariff scale value for the next
tariff. (from 0 to 15)
Tariff factor
(next tariff)
O Number from 1 to 255 which multiplied
by the tariff scale of the tariff indicators
gives the charging period (in second) to
charge the call
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
25
6.3.5 Charging acknowledgement request
Only for use with circuit groups configured for SSUTR2 operation.
The charging acknowledgement request primitive is issued by the application
for an outgoing call to acknowledge a valid collection charging message
[Message d'imputation de taxes] (ITX) or a tariff change message
[Message de changement de tarification] (CHT).
It corresponds to the SSUTR2 Charging Acknowledgement Message
[Signal
d'accusé de reception de taxation](TXA).
Charging acknowledgement request
Parameter Class Comments
Primitive type octet M Value = 202 (0xca)
6.3.6 Circuit seized request
The circuit seized request primitive is issued by the application for an
outgoing continuity check and causes a CCR (CCD for SSUTR2) message to
be sent by the TUP module.
Circuit seized request
Parameter Class Comments
Primitive type octet M Value = 199 (0xc7)
Nature of connection indicators M Used to set the Continuity check
indicator (i.e. whether continuity check
is requested)
6.3.7 Collection charging request
Use with circuit groups configured for China or SSUTR2 operation.
The collection charging request primitive is issued by the application after
called party answer to provide the number of charging units to be billed to
the calling subscriber.
For SSUTR2 it corresponds to Collection Charging Message
[Message
d'imputation de taxes] (ITX).
For China TUP it corresponds to the Metering Pulse Message (MPM).
Collection charging request
Parameter Class Comments
Primitive type octet M Value = 201 (0xc9)
Number of metering pulses M Number of charging units to input to the
subscriber account when this message
is received
Message number O Collection charging message number
sent for a given call.
Mandatory for SSUTR2
Call Control Interface
26
6.3.8 Continuity report request
The Continuity report request primitive is issued by the application to indicate
the outcome of a continuity check for an incoming circuit when a call is being
transited onto an outgoing circuit.
Continuity report request
Parameter Class Comments
Primitive type octet M Value = 5 (0x05)
Continuity indicators M Indicates continuity check success or
failure
6.3.9 End-to-end information request
Only for use with circuit groups configured for SSUTR2 operation.
The end-to-end information request primitive allows end-to-end information
to be sent in either direction at any stage of the call. In SSUTR2 it
corresponds to the End-to-end Information Message
[Message
d'information entre commutateur d'extrémités] (MCE).
End-to-end information request
Parameter Class Comments
Primitive type octet M Value = 200 (0xc8)
Access Transport O
User to user information O
6.3.10 Forward information request
This primitive allows the user to send additional called party address digits
during outgoing call setup. A single address digit is conveyed to the
destination in a Subsequent Address message with One signal (SAO)
message. Two or more digits are conveyed in a Subsequent Address Message
(SAM).
Forward information request
Parameter Class Comments
Primitive type octet M Value = 2 (0x02)
Subsequent number M
6.3.11 Forward transfer request
Not used in SSUTR2 mode.
The Forward transfer request primitive is issued by the application to request
operator assistance on an outgoing call.
Forward transfer request
Parameter Class Comments
Primitive type octet M Value = 8 (0x08)
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
27
6.3.12 Release request
The release request primitive allows the application to end an outgoing call
(or call attempt) and to reject or end an incoming call. It may be used at any
stage of the call. It is also used as an immediate response to a received
Release Indication primitive from the TUP module.
If an incoming call is being cleared and the user wishes to have the option to
re-answer, a Suspend Request should be used in place of a Release Request.
The Release request primitive specifies the reason for the call termination.
This is translated by the TUP to an unsuccessful backwards message (UBM)
type when received during incoming call setup. A signaling point code may
optionally be included to cause an Extended Unsuccessful Backwards
message (EUM) to be sent to the network.
To initiate call clearing, the application should send this message to the TUP
module. It should then wait until a Release Confirmation is received from the
TUP module before selecting the circuit for a new outgoing call attempt.
When the application receives a Release Indication message from the TUP
module, it must take the following action:
• If the application has not yet issued a Release Request message, then it
should do so immediately. It should follow this with a Release Response
when it has finished clearing the switch path. If however the application is
in a position to issue the Release Response immediately it may omit the
Release Request.
• If the application has already issued a Release Request, then it should
respond with a Release Response when it has finished clearing the switch
path.
In both cases, the application should wait until a Release Confirmation has
been received from the TUP module before selecting the circuit for a new
outgoing call attempt.
This call clearing mechanism ensures the circuit is properly released before
the user application may initiate a new call attempt. It should be used where
possible. Configuration options TUPF_NAI and TUPF_ACR must be set to
select this behavior.
Note: For China TUP, a Release Request will cause a CCL (calling party clearing)
message to be sent (in answered state), if holding has been requested previously
for the call.
Call Control Interface
28
Release request
Parameter Class Comments
Primitive type octet M Value = 12 (0x0c)
Cause indicators O Used to convey the reason for call
clearing
Additional cause information O Contains the cause to be used in the
SND or EAR message.
SSUTR2 mode only
Signaling point code O Causes an EUM to be sent when
releasing a call in the incoming setup
state
Not used in SSUTR2
Access Transport O SSUTR2 mode only
User to User Information O SSUTR2 mode only
6.3.13 Release response
This primitive is used by the application where call clearing was initiated by
the TUP module. It advises the TUP module that the application has finished
to clear the switch path and that the circuit is available for re-selection.
Whenever a Release Indication is received from the TUP module, the
application must return a Release Response to the TUP module once it has
finished clearing the call.
Release response
Parameter Class Comments
Primitive type octet M Value = 16 (0x10)
6.3.14 Resume request
A primitive issued in the backwards direction indicating that the called party
wishes to re-answer a call after having previously issued a suspended
request. This will cause a Re-Answer Message (RAN) to be sent to the
network.
Resume request
Parameter Class Comments
Primitive type octet M Value = 14 (0x0e)
Suspend/resume indicator O [network initiated]
Used to indicate whether the resume is
network or user initiated.
The primitive is ignored when set to
"user-initiated".
This parameter is useful when
interworking with ISUP or Q.931.
Dialogic® SS7 Protocols TUP Programmer's Manual Issue 10
29
6.3.15 Setup request
The setup request primitive is issued by the application to initiate an outgoing
call attempt. The information will be conveyed to the network in either an