mssql_config.sql 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981
  1. BEGIN TRANSACTION;
  2. CREATE TABLE alembic_version (
  3. version_num VARCHAR(32) NOT NULL
  4. );
  5. GO
  6. -- Running upgrade None -> 4da0c5f79a9c
  7. CREATE TABLE sippeers (
  8. id INTEGER NOT NULL IDENTITY(1,1),
  9. name VARCHAR(40) NOT NULL,
  10. ipaddr VARCHAR(45) NULL,
  11. port INTEGER NULL,
  12. regseconds INTEGER NULL,
  13. defaultuser VARCHAR(40) NULL,
  14. fullcontact VARCHAR(80) NULL,
  15. regserver VARCHAR(20) NULL,
  16. useragent VARCHAR(20) NULL,
  17. lastms INTEGER NULL,
  18. host VARCHAR(40) NULL,
  19. type VARCHAR(6) NULL,
  20. context VARCHAR(40) NULL,
  21. permit VARCHAR(95) NULL,
  22. [deny] VARCHAR(95) NULL,
  23. secret VARCHAR(40) NULL,
  24. md5secret VARCHAR(40) NULL,
  25. remotesecret VARCHAR(40) NULL,
  26. transport VARCHAR(7) NULL,
  27. dtmfmode VARCHAR(9) NULL,
  28. directmedia VARCHAR(6) NULL,
  29. nat VARCHAR(29) NULL,
  30. callgroup VARCHAR(40) NULL,
  31. pickupgroup VARCHAR(40) NULL,
  32. language VARCHAR(40) NULL,
  33. disallow VARCHAR(200) NULL,
  34. allow VARCHAR(200) NULL,
  35. insecure VARCHAR(40) NULL,
  36. trustrpid VARCHAR(3) NULL,
  37. progressinband VARCHAR(5) NULL,
  38. promiscredir VARCHAR(3) NULL,
  39. useclientcode VARCHAR(3) NULL,
  40. accountcode VARCHAR(40) NULL,
  41. setvar VARCHAR(200) NULL,
  42. callerid VARCHAR(40) NULL,
  43. amaflags VARCHAR(40) NULL,
  44. callcounter VARCHAR(3) NULL,
  45. busylevel INTEGER NULL,
  46. allowoverlap VARCHAR(3) NULL,
  47. allowsubscribe VARCHAR(3) NULL,
  48. videosupport VARCHAR(3) NULL,
  49. maxcallbitrate INTEGER NULL,
  50. rfc2833compensate VARCHAR(3) NULL,
  51. mailbox VARCHAR(40) NULL,
  52. [session-timers] VARCHAR(9) NULL,
  53. [session-expires] INTEGER NULL,
  54. [session-minse] INTEGER NULL,
  55. [session-refresher] VARCHAR(3) NULL,
  56. t38pt_usertpsource VARCHAR(40) NULL,
  57. regexten VARCHAR(40) NULL,
  58. fromdomain VARCHAR(40) NULL,
  59. fromuser VARCHAR(40) NULL,
  60. qualify VARCHAR(40) NULL,
  61. defaultip VARCHAR(45) NULL,
  62. rtptimeout INTEGER NULL,
  63. rtpholdtimeout INTEGER NULL,
  64. sendrpid VARCHAR(3) NULL,
  65. outboundproxy VARCHAR(40) NULL,
  66. callbackextension VARCHAR(40) NULL,
  67. timert1 INTEGER NULL,
  68. timerb INTEGER NULL,
  69. qualifyfreq INTEGER NULL,
  70. constantssrc VARCHAR(3) NULL,
  71. contactpermit VARCHAR(95) NULL,
  72. contactdeny VARCHAR(95) NULL,
  73. usereqphone VARCHAR(3) NULL,
  74. textsupport VARCHAR(3) NULL,
  75. faxdetect VARCHAR(3) NULL,
  76. buggymwi VARCHAR(3) NULL,
  77. auth VARCHAR(40) NULL,
  78. fullname VARCHAR(40) NULL,
  79. trunkname VARCHAR(40) NULL,
  80. cid_number VARCHAR(40) NULL,
  81. callingpres VARCHAR(21) NULL,
  82. mohinterpret VARCHAR(40) NULL,
  83. mohsuggest VARCHAR(40) NULL,
  84. parkinglot VARCHAR(40) NULL,
  85. hasvoicemail VARCHAR(3) NULL,
  86. subscribemwi VARCHAR(3) NULL,
  87. vmexten VARCHAR(40) NULL,
  88. autoframing VARCHAR(3) NULL,
  89. rtpkeepalive INTEGER NULL,
  90. [call-limit] INTEGER NULL,
  91. g726nonstandard VARCHAR(3) NULL,
  92. ignoresdpversion VARCHAR(3) NULL,
  93. allowtransfer VARCHAR(3) NULL,
  94. dynamic VARCHAR(3) NULL,
  95. path VARCHAR(256) NULL,
  96. supportpath VARCHAR(3) NULL,
  97. PRIMARY KEY (id),
  98. UNIQUE (name),
  99. CONSTRAINT type_values CHECK (type IN ('friend', 'user', 'peer')),
  100. CONSTRAINT sip_transport_values CHECK (transport IN ('udp', 'tcp', 'tls', 'ws', 'wss', 'udp,tcp', 'tcp,udp')),
  101. CONSTRAINT sip_dtmfmode_values CHECK (dtmfmode IN ('rfc2833', 'info', 'shortinfo', 'inband', 'auto')),
  102. CONSTRAINT sip_directmedia_values CHECK (directmedia IN ('yes', 'no', 'nonat', 'update')),
  103. CONSTRAINT yes_no_values CHECK (trustrpid IN ('yes', 'no')),
  104. CONSTRAINT sip_progressinband_values CHECK (progressinband IN ('yes', 'no', 'never')),
  105. CONSTRAINT yes_no_values CHECK (promiscredir IN ('yes', 'no')),
  106. CONSTRAINT yes_no_values CHECK (useclientcode IN ('yes', 'no')),
  107. CONSTRAINT yes_no_values CHECK (callcounter IN ('yes', 'no')),
  108. CONSTRAINT yes_no_values CHECK (allowoverlap IN ('yes', 'no')),
  109. CONSTRAINT yes_no_values CHECK (allowsubscribe IN ('yes', 'no')),
  110. CONSTRAINT yes_no_values CHECK (videosupport IN ('yes', 'no')),
  111. CONSTRAINT yes_no_values CHECK (rfc2833compensate IN ('yes', 'no')),
  112. CONSTRAINT sip_session_timers_values CHECK ([session-timers] IN ('accept', 'refuse', 'originate')),
  113. CONSTRAINT sip_session_refresher_values CHECK ([session-refresher] IN ('uac', 'uas')),
  114. CONSTRAINT yes_no_values CHECK (sendrpid IN ('yes', 'no')),
  115. CONSTRAINT yes_no_values CHECK (constantssrc IN ('yes', 'no')),
  116. CONSTRAINT yes_no_values CHECK (usereqphone IN ('yes', 'no')),
  117. CONSTRAINT yes_no_values CHECK (textsupport IN ('yes', 'no')),
  118. CONSTRAINT yes_no_values CHECK (faxdetect IN ('yes', 'no')),
  119. CONSTRAINT yes_no_values CHECK (buggymwi IN ('yes', 'no')),
  120. CONSTRAINT sip_callingpres_values CHECK (callingpres IN ('allowed_not_screened', 'allowed_passed_screen', 'allowed_failed_screen', 'allowed', 'prohib_not_screened', 'prohib_passed_screen', 'prohib_failed_screen', 'prohib')),
  121. CONSTRAINT yes_no_values CHECK (hasvoicemail IN ('yes', 'no')),
  122. CONSTRAINT yes_no_values CHECK (subscribemwi IN ('yes', 'no')),
  123. CONSTRAINT yes_no_values CHECK (autoframing IN ('yes', 'no')),
  124. CONSTRAINT yes_no_values CHECK (g726nonstandard IN ('yes', 'no')),
  125. CONSTRAINT yes_no_values CHECK (ignoresdpversion IN ('yes', 'no')),
  126. CONSTRAINT yes_no_values CHECK (allowtransfer IN ('yes', 'no')),
  127. CONSTRAINT yes_no_values CHECK (dynamic IN ('yes', 'no')),
  128. CONSTRAINT yes_no_values CHECK (supportpath IN ('yes', 'no'))
  129. );
  130. GO
  131. CREATE INDEX sippeers_name ON sippeers (name);
  132. GO
  133. CREATE INDEX sippeers_name_host ON sippeers (name, host);
  134. GO
  135. CREATE INDEX sippeers_ipaddr_port ON sippeers (ipaddr, port);
  136. GO
  137. CREATE INDEX sippeers_host_port ON sippeers (host, port);
  138. GO
  139. CREATE TABLE iaxfriends (
  140. id INTEGER NOT NULL IDENTITY(1,1),
  141. name VARCHAR(40) NOT NULL,
  142. type VARCHAR(6) NULL,
  143. username VARCHAR(40) NULL,
  144. mailbox VARCHAR(40) NULL,
  145. secret VARCHAR(40) NULL,
  146. dbsecret VARCHAR(40) NULL,
  147. context VARCHAR(40) NULL,
  148. regcontext VARCHAR(40) NULL,
  149. host VARCHAR(40) NULL,
  150. ipaddr VARCHAR(40) NULL,
  151. port INTEGER NULL,
  152. defaultip VARCHAR(20) NULL,
  153. sourceaddress VARCHAR(20) NULL,
  154. mask VARCHAR(20) NULL,
  155. regexten VARCHAR(40) NULL,
  156. regseconds INTEGER NULL,
  157. accountcode VARCHAR(20) NULL,
  158. mohinterpret VARCHAR(20) NULL,
  159. mohsuggest VARCHAR(20) NULL,
  160. inkeys VARCHAR(40) NULL,
  161. outkeys VARCHAR(40) NULL,
  162. language VARCHAR(10) NULL,
  163. callerid VARCHAR(100) NULL,
  164. cid_number VARCHAR(40) NULL,
  165. sendani VARCHAR(3) NULL,
  166. fullname VARCHAR(40) NULL,
  167. trunk VARCHAR(3) NULL,
  168. auth VARCHAR(20) NULL,
  169. maxauthreq INTEGER NULL,
  170. requirecalltoken VARCHAR(4) NULL,
  171. encryption VARCHAR(6) NULL,
  172. transfer VARCHAR(9) NULL,
  173. jitterbuffer VARCHAR(3) NULL,
  174. forcejitterbuffer VARCHAR(3) NULL,
  175. disallow VARCHAR(200) NULL,
  176. allow VARCHAR(200) NULL,
  177. codecpriority VARCHAR(40) NULL,
  178. qualify VARCHAR(10) NULL,
  179. qualifysmoothing VARCHAR(3) NULL,
  180. qualifyfreqok VARCHAR(10) NULL,
  181. qualifyfreqnotok VARCHAR(10) NULL,
  182. timezone VARCHAR(20) NULL,
  183. adsi VARCHAR(3) NULL,
  184. amaflags VARCHAR(20) NULL,
  185. setvar VARCHAR(200) NULL,
  186. PRIMARY KEY (id),
  187. UNIQUE (name),
  188. CONSTRAINT type_values CHECK (type IN ('friend', 'user', 'peer')),
  189. CONSTRAINT yes_no_values CHECK (sendani IN ('yes', 'no')),
  190. CONSTRAINT yes_no_values CHECK (trunk IN ('yes', 'no')),
  191. CONSTRAINT iax_requirecalltoken_values CHECK (requirecalltoken IN ('yes', 'no', 'auto')),
  192. CONSTRAINT iax_encryption_values CHECK (encryption IN ('yes', 'no', 'aes128')),
  193. CONSTRAINT iax_transfer_values CHECK (transfer IN ('yes', 'no', 'mediaonly')),
  194. CONSTRAINT yes_no_values CHECK (jitterbuffer IN ('yes', 'no')),
  195. CONSTRAINT yes_no_values CHECK (forcejitterbuffer IN ('yes', 'no')),
  196. CONSTRAINT yes_no_values CHECK (qualifysmoothing IN ('yes', 'no')),
  197. CONSTRAINT yes_no_values CHECK (adsi IN ('yes', 'no'))
  198. );
  199. GO
  200. CREATE INDEX iaxfriends_name ON iaxfriends (name);
  201. GO
  202. CREATE INDEX iaxfriends_name_host ON iaxfriends (name, host);
  203. GO
  204. CREATE INDEX iaxfriends_name_ipaddr_port ON iaxfriends (name, ipaddr, port);
  205. GO
  206. CREATE INDEX iaxfriends_ipaddr_port ON iaxfriends (ipaddr, port);
  207. GO
  208. CREATE INDEX iaxfriends_host_port ON iaxfriends (host, port);
  209. GO
  210. CREATE TABLE voicemail (
  211. uniqueid INTEGER NOT NULL IDENTITY(1,1),
  212. context VARCHAR(80) NOT NULL,
  213. mailbox VARCHAR(80) NOT NULL,
  214. password VARCHAR(80) NOT NULL,
  215. fullname VARCHAR(80) NULL,
  216. alias VARCHAR(80) NULL,
  217. email VARCHAR(80) NULL,
  218. pager VARCHAR(80) NULL,
  219. attach VARCHAR(3) NULL,
  220. attachfmt VARCHAR(10) NULL,
  221. serveremail VARCHAR(80) NULL,
  222. language VARCHAR(20) NULL,
  223. tz VARCHAR(30) NULL,
  224. deletevoicemail VARCHAR(3) NULL,
  225. saycid VARCHAR(3) NULL,
  226. sendvoicemail VARCHAR(3) NULL,
  227. review VARCHAR(3) NULL,
  228. tempgreetwarn VARCHAR(3) NULL,
  229. operator VARCHAR(3) NULL,
  230. envelope VARCHAR(3) NULL,
  231. sayduration INTEGER NULL,
  232. forcename VARCHAR(3) NULL,
  233. forcegreetings VARCHAR(3) NULL,
  234. callback VARCHAR(80) NULL,
  235. dialout VARCHAR(80) NULL,
  236. exitcontext VARCHAR(80) NULL,
  237. maxmsg INTEGER NULL,
  238. volgain NUMERIC(5, 2) NULL,
  239. imapuser VARCHAR(80) NULL,
  240. imappassword VARCHAR(80) NULL,
  241. imapserver VARCHAR(80) NULL,
  242. imapport VARCHAR(8) NULL,
  243. imapflags VARCHAR(80) NULL,
  244. stamp DATETIME NULL,
  245. PRIMARY KEY (uniqueid),
  246. CONSTRAINT yes_no_values CHECK (attach IN ('yes', 'no')),
  247. CONSTRAINT yes_no_values CHECK (deletevoicemail IN ('yes', 'no')),
  248. CONSTRAINT yes_no_values CHECK (saycid IN ('yes', 'no')),
  249. CONSTRAINT yes_no_values CHECK (sendvoicemail IN ('yes', 'no')),
  250. CONSTRAINT yes_no_values CHECK (review IN ('yes', 'no')),
  251. CONSTRAINT yes_no_values CHECK (tempgreetwarn IN ('yes', 'no')),
  252. CONSTRAINT yes_no_values CHECK (operator IN ('yes', 'no')),
  253. CONSTRAINT yes_no_values CHECK (envelope IN ('yes', 'no')),
  254. CONSTRAINT yes_no_values CHECK (forcename IN ('yes', 'no')),
  255. CONSTRAINT yes_no_values CHECK (forcegreetings IN ('yes', 'no'))
  256. );
  257. GO
  258. CREATE INDEX voicemail_mailbox ON voicemail (mailbox);
  259. GO
  260. CREATE INDEX voicemail_context ON voicemail (context);
  261. GO
  262. CREATE INDEX voicemail_mailbox_context ON voicemail (mailbox, context);
  263. GO
  264. CREATE INDEX voicemail_imapuser ON voicemail (imapuser);
  265. GO
  266. CREATE TABLE meetme (
  267. bookid INTEGER NOT NULL IDENTITY(1,1),
  268. confno VARCHAR(80) NOT NULL,
  269. starttime DATETIME NULL,
  270. endtime DATETIME NULL,
  271. pin VARCHAR(20) NULL,
  272. adminpin VARCHAR(20) NULL,
  273. opts VARCHAR(20) NULL,
  274. adminopts VARCHAR(20) NULL,
  275. recordingfilename VARCHAR(80) NULL,
  276. recordingformat VARCHAR(10) NULL,
  277. maxusers INTEGER NULL,
  278. members INTEGER NOT NULL,
  279. PRIMARY KEY (bookid)
  280. );
  281. GO
  282. CREATE INDEX meetme_confno_start_end ON meetme (confno, starttime, endtime);
  283. GO
  284. CREATE TABLE musiconhold (
  285. name VARCHAR(80) NOT NULL,
  286. mode VARCHAR(10) NULL,
  287. directory VARCHAR(255) NULL,
  288. application VARCHAR(255) NULL,
  289. digit VARCHAR(1) NULL,
  290. sort VARCHAR(10) NULL,
  291. format VARCHAR(10) NULL,
  292. stamp DATETIME NULL,
  293. PRIMARY KEY (name),
  294. CONSTRAINT moh_mode_values CHECK (mode IN ('custom', 'files', 'mp3nb', 'quietmp3nb', 'quietmp3'))
  295. );
  296. GO
  297. -- Running upgrade 4da0c5f79a9c -> 43956d550a44
  298. CREATE TABLE ps_endpoints (
  299. id VARCHAR(40) NOT NULL,
  300. transport VARCHAR(40) NULL,
  301. aors VARCHAR(200) NULL,
  302. auth VARCHAR(40) NULL,
  303. context VARCHAR(40) NULL,
  304. disallow VARCHAR(200) NULL,
  305. allow VARCHAR(200) NULL,
  306. direct_media VARCHAR(3) NULL,
  307. connected_line_method VARCHAR(8) NULL,
  308. direct_media_method VARCHAR(8) NULL,
  309. direct_media_glare_mitigation VARCHAR(8) NULL,
  310. disable_direct_media_on_nat VARCHAR(3) NULL,
  311. dtmf_mode VARCHAR(7) NULL,
  312. external_media_address VARCHAR(40) NULL,
  313. force_rport VARCHAR(3) NULL,
  314. ice_support VARCHAR(3) NULL,
  315. identify_by VARCHAR(8) NULL,
  316. mailboxes VARCHAR(40) NULL,
  317. moh_suggest VARCHAR(40) NULL,
  318. outbound_auth VARCHAR(40) NULL,
  319. outbound_proxy VARCHAR(40) NULL,
  320. rewrite_contact VARCHAR(3) NULL,
  321. rtp_ipv6 VARCHAR(3) NULL,
  322. rtp_symmetric VARCHAR(3) NULL,
  323. send_diversion VARCHAR(3) NULL,
  324. send_pai VARCHAR(3) NULL,
  325. send_rpid VARCHAR(3) NULL,
  326. timers_min_se INTEGER NULL,
  327. timers VARCHAR(8) NULL,
  328. timers_sess_expires INTEGER NULL,
  329. callerid VARCHAR(40) NULL,
  330. callerid_privacy VARCHAR(23) NULL,
  331. callerid_tag VARCHAR(40) NULL,
  332. [100rel] VARCHAR(8) NULL,
  333. aggregate_mwi VARCHAR(3) NULL,
  334. trust_id_inbound VARCHAR(3) NULL,
  335. trust_id_outbound VARCHAR(3) NULL,
  336. use_ptime VARCHAR(3) NULL,
  337. use_avpf VARCHAR(3) NULL,
  338. media_encryption VARCHAR(4) NULL,
  339. inband_progress VARCHAR(3) NULL,
  340. call_group VARCHAR(40) NULL,
  341. pickup_group VARCHAR(40) NULL,
  342. named_call_group VARCHAR(40) NULL,
  343. named_pickup_group VARCHAR(40) NULL,
  344. device_state_busy_at INTEGER NULL,
  345. fax_detect VARCHAR(3) NULL,
  346. t38_udptl VARCHAR(3) NULL,
  347. t38_udptl_ec VARCHAR(10) NULL,
  348. t38_udptl_maxdatagram INTEGER NULL,
  349. t38_udptl_nat VARCHAR(3) NULL,
  350. t38_udptl_ipv6 VARCHAR(3) NULL,
  351. tone_zone VARCHAR(40) NULL,
  352. language VARCHAR(40) NULL,
  353. one_touch_recording VARCHAR(3) NULL,
  354. record_on_feature VARCHAR(40) NULL,
  355. record_off_feature VARCHAR(40) NULL,
  356. rtp_engine VARCHAR(40) NULL,
  357. allow_transfer VARCHAR(3) NULL,
  358. allow_subscribe VARCHAR(3) NULL,
  359. sdp_owner VARCHAR(40) NULL,
  360. sdp_session VARCHAR(40) NULL,
  361. tos_audio INTEGER NULL,
  362. tos_video INTEGER NULL,
  363. cos_audio INTEGER NULL,
  364. cos_video INTEGER NULL,
  365. sub_min_expiry INTEGER NULL,
  366. from_domain VARCHAR(40) NULL,
  367. from_user VARCHAR(40) NULL,
  368. mwi_fromuser VARCHAR(40) NULL,
  369. dtls_verify VARCHAR(40) NULL,
  370. dtls_rekey VARCHAR(40) NULL,
  371. dtls_cert_file VARCHAR(200) NULL,
  372. dtls_private_key VARCHAR(200) NULL,
  373. dtls_cipher VARCHAR(200) NULL,
  374. dtls_ca_file VARCHAR(200) NULL,
  375. dtls_ca_path VARCHAR(200) NULL,
  376. dtls_setup VARCHAR(7) NULL,
  377. srtp_tag_32 VARCHAR(3) NULL,
  378. UNIQUE (id),
  379. CONSTRAINT yesno_values CHECK (direct_media IN ('yes', 'no')),
  380. CONSTRAINT pjsip_connected_line_method_values CHECK (connected_line_method IN ('invite', 'reinvite', 'update')),
  381. CONSTRAINT pjsip_connected_line_method_values CHECK (direct_media_method IN ('invite', 'reinvite', 'update')),
  382. CONSTRAINT pjsip_direct_media_glare_mitigation_values CHECK (direct_media_glare_mitigation IN ('none', 'outgoing', 'incoming')),
  383. CONSTRAINT yesno_values CHECK (disable_direct_media_on_nat IN ('yes', 'no')),
  384. CONSTRAINT pjsip_dtmf_mode_values CHECK (dtmf_mode IN ('rfc4733', 'inband', 'info')),
  385. CONSTRAINT yesno_values CHECK (force_rport IN ('yes', 'no')),
  386. CONSTRAINT yesno_values CHECK (ice_support IN ('yes', 'no')),
  387. CONSTRAINT pjsip_identify_by_values CHECK (identify_by IN ('username')),
  388. CONSTRAINT yesno_values CHECK (rewrite_contact IN ('yes', 'no')),
  389. CONSTRAINT yesno_values CHECK (rtp_ipv6 IN ('yes', 'no')),
  390. CONSTRAINT yesno_values CHECK (rtp_symmetric IN ('yes', 'no')),
  391. CONSTRAINT yesno_values CHECK (send_diversion IN ('yes', 'no')),
  392. CONSTRAINT yesno_values CHECK (send_pai IN ('yes', 'no')),
  393. CONSTRAINT yesno_values CHECK (send_rpid IN ('yes', 'no')),
  394. CONSTRAINT pjsip_timer_values CHECK (timers IN ('forced', 'no', 'required', 'yes')),
  395. CONSTRAINT pjsip_cid_privacy_values CHECK (callerid_privacy IN ('allowed_not_screened', 'allowed_passed_screened', 'allowed_failed_screened', 'allowed', 'prohib_not_screened', 'prohib_passed_screened', 'prohib_failed_screened', 'prohib', 'unavailable')),
  396. CONSTRAINT pjsip_100rel_values CHECK ([100rel] IN ('no', 'required', 'yes')),
  397. CONSTRAINT yesno_values CHECK (aggregate_mwi IN ('yes', 'no')),
  398. CONSTRAINT yesno_values CHECK (trust_id_inbound IN ('yes', 'no')),
  399. CONSTRAINT yesno_values CHECK (trust_id_outbound IN ('yes', 'no')),
  400. CONSTRAINT yesno_values CHECK (use_ptime IN ('yes', 'no')),
  401. CONSTRAINT yesno_values CHECK (use_avpf IN ('yes', 'no')),
  402. CONSTRAINT pjsip_media_encryption_values CHECK (media_encryption IN ('no', 'sdes', 'dtls')),
  403. CONSTRAINT yesno_values CHECK (inband_progress IN ('yes', 'no')),
  404. CONSTRAINT yesno_values CHECK (fax_detect IN ('yes', 'no')),
  405. CONSTRAINT yesno_values CHECK (t38_udptl IN ('yes', 'no')),
  406. CONSTRAINT pjsip_t38udptl_ec_values CHECK (t38_udptl_ec IN ('none', 'fec', 'redundancy')),
  407. CONSTRAINT yesno_values CHECK (t38_udptl_nat IN ('yes', 'no')),
  408. CONSTRAINT yesno_values CHECK (t38_udptl_ipv6 IN ('yes', 'no')),
  409. CONSTRAINT yesno_values CHECK (one_touch_recording IN ('yes', 'no')),
  410. CONSTRAINT yesno_values CHECK (allow_transfer IN ('yes', 'no')),
  411. CONSTRAINT yesno_values CHECK (allow_subscribe IN ('yes', 'no')),
  412. CONSTRAINT pjsip_dtls_setup_values CHECK (dtls_setup IN ('active', 'passive', 'actpass')),
  413. CONSTRAINT yesno_values CHECK (srtp_tag_32 IN ('yes', 'no'))
  414. );
  415. GO
  416. CREATE INDEX ps_endpoints_id ON ps_endpoints (id);
  417. GO
  418. CREATE TABLE ps_auths (
  419. id VARCHAR(40) NOT NULL,
  420. auth_type VARCHAR(8) NULL,
  421. nonce_lifetime INTEGER NULL,
  422. md5_cred VARCHAR(40) NULL,
  423. password VARCHAR(80) NULL,
  424. realm VARCHAR(40) NULL,
  425. username VARCHAR(40) NULL,
  426. UNIQUE (id),
  427. CONSTRAINT pjsip_auth_type_values CHECK (auth_type IN ('md5', 'userpass'))
  428. );
  429. GO
  430. CREATE INDEX ps_auths_id ON ps_auths (id);
  431. GO
  432. CREATE TABLE ps_aors (
  433. id VARCHAR(40) NOT NULL,
  434. contact VARCHAR(40) NULL,
  435. default_expiration INTEGER NULL,
  436. mailboxes VARCHAR(80) NULL,
  437. max_contacts INTEGER NULL,
  438. minimum_expiration INTEGER NULL,
  439. remove_existing VARCHAR(3) NULL,
  440. qualify_frequency INTEGER NULL,
  441. authenticate_qualify VARCHAR(3) NULL,
  442. UNIQUE (id),
  443. CONSTRAINT yesno_values CHECK (remove_existing IN ('yes', 'no')),
  444. CONSTRAINT yesno_values CHECK (authenticate_qualify IN ('yes', 'no'))
  445. );
  446. GO
  447. CREATE INDEX ps_aors_id ON ps_aors (id);
  448. GO
  449. CREATE TABLE ps_contacts (
  450. id VARCHAR(40) NOT NULL,
  451. uri VARCHAR(40) NULL,
  452. expiration_time VARCHAR(40) NULL,
  453. qualify_frequency INTEGER NULL,
  454. UNIQUE (id)
  455. );
  456. GO
  457. CREATE INDEX ps_contacts_id ON ps_contacts (id);
  458. GO
  459. CREATE TABLE ps_domain_aliases (
  460. id VARCHAR(40) NOT NULL,
  461. domain VARCHAR(80) NULL,
  462. UNIQUE (id)
  463. );
  464. GO
  465. CREATE INDEX ps_domain_aliases_id ON ps_domain_aliases (id);
  466. GO
  467. CREATE TABLE ps_endpoint_id_ips (
  468. id VARCHAR(40) NOT NULL,
  469. endpoint VARCHAR(40) NULL,
  470. match VARCHAR(80) NULL,
  471. UNIQUE (id)
  472. );
  473. GO
  474. CREATE INDEX ps_endpoint_id_ips_id ON ps_endpoint_id_ips (id);
  475. GO
  476. -- Running upgrade 43956d550a44 -> 581a4264e537
  477. CREATE TABLE extensions (
  478. id BIGINT NOT NULL IDENTITY(1,1),
  479. context VARCHAR(40) NOT NULL,
  480. exten VARCHAR(40) NOT NULL,
  481. priority INTEGER NOT NULL,
  482. app VARCHAR(40) NOT NULL,
  483. appdata VARCHAR(256) NOT NULL,
  484. PRIMARY KEY (id, context, exten, priority),
  485. UNIQUE (id)
  486. );
  487. GO
  488. -- Running upgrade 581a4264e537 -> 2fc7930b41b3
  489. CREATE TABLE ps_systems (
  490. id VARCHAR(40) NOT NULL,
  491. timer_t1 INTEGER NULL,
  492. timer_b INTEGER NULL,
  493. compact_headers VARCHAR(3) NULL,
  494. threadpool_initial_size INTEGER NULL,
  495. threadpool_auto_increment INTEGER NULL,
  496. threadpool_idle_timeout INTEGER NULL,
  497. threadpool_max_size INTEGER NULL,
  498. UNIQUE (id),
  499. CONSTRAINT yesno_values CHECK (compact_headers IN ('yes', 'no'))
  500. );
  501. GO
  502. CREATE INDEX ps_systems_id ON ps_systems (id);
  503. GO
  504. CREATE TABLE ps_globals (
  505. id VARCHAR(40) NOT NULL,
  506. max_forwards INTEGER NULL,
  507. user_agent VARCHAR(40) NULL,
  508. default_outbound_endpoint VARCHAR(40) NULL,
  509. UNIQUE (id)
  510. );
  511. GO
  512. CREATE INDEX ps_globals_id ON ps_globals (id);
  513. GO
  514. CREATE TABLE ps_transports (
  515. id VARCHAR(40) NOT NULL,
  516. async_operations INTEGER NULL,
  517. bind VARCHAR(40) NULL,
  518. ca_list_file VARCHAR(200) NULL,
  519. cert_file VARCHAR(200) NULL,
  520. cipher VARCHAR(200) NULL,
  521. domain VARCHAR(40) NULL,
  522. external_media_address VARCHAR(40) NULL,
  523. external_signaling_address VARCHAR(40) NULL,
  524. external_signaling_port INTEGER NULL,
  525. method VARCHAR(11) NULL,
  526. local_net VARCHAR(40) NULL,
  527. password VARCHAR(40) NULL,
  528. priv_key_file VARCHAR(200) NULL,
  529. protocol VARCHAR(3) NULL,
  530. require_client_cert VARCHAR(3) NULL,
  531. verify_client VARCHAR(3) NULL,
  532. verifiy_server VARCHAR(3) NULL,
  533. tos VARCHAR(3) NULL,
  534. cos VARCHAR(3) NULL,
  535. UNIQUE (id),
  536. CONSTRAINT pjsip_transport_method_values CHECK (method IN ('default', 'unspecified', 'tlsv1', 'sslv2', 'sslv3', 'sslv23')),
  537. CONSTRAINT pjsip_transport_protocol_values CHECK (protocol IN ('udp', 'tcp', 'tls', 'ws', 'wss')),
  538. CONSTRAINT yesno_values CHECK (require_client_cert IN ('yes', 'no')),
  539. CONSTRAINT yesno_values CHECK (verify_client IN ('yes', 'no')),
  540. CONSTRAINT yesno_values CHECK (verifiy_server IN ('yes', 'no')),
  541. CONSTRAINT yesno_values CHECK (tos IN ('yes', 'no')),
  542. CONSTRAINT yesno_values CHECK (cos IN ('yes', 'no'))
  543. );
  544. GO
  545. CREATE INDEX ps_transports_id ON ps_transports (id);
  546. GO
  547. CREATE TABLE ps_registrations (
  548. id VARCHAR(40) NOT NULL,
  549. auth_rejection_permanent VARCHAR(3) NULL,
  550. client_uri VARCHAR(40) NULL,
  551. contact_user VARCHAR(40) NULL,
  552. expiration INTEGER NULL,
  553. max_retries INTEGER NULL,
  554. outbound_auth VARCHAR(40) NULL,
  555. outbound_proxy VARCHAR(40) NULL,
  556. retry_interval INTEGER NULL,
  557. forbidden_retry_interval INTEGER NULL,
  558. server_uri VARCHAR(40) NULL,
  559. transport VARCHAR(40) NULL,
  560. support_path VARCHAR(3) NULL,
  561. UNIQUE (id),
  562. CONSTRAINT yesno_values CHECK (auth_rejection_permanent IN ('yes', 'no')),
  563. CONSTRAINT yesno_values CHECK (support_path IN ('yes', 'no'))
  564. );
  565. GO
  566. CREATE INDEX ps_registrations_id ON ps_registrations (id);
  567. GO
  568. ALTER TABLE ps_endpoints ADD media_address VARCHAR(40) NULL;
  569. GO
  570. ALTER TABLE ps_endpoints ADD redirect_method VARCHAR(9) NULL;
  571. GO
  572. ALTER TABLE ps_endpoints ADD CONSTRAINT pjsip_redirect_method_values CHECK (redirect_method IN ('user', 'uri_core', 'uri_pjsip'));
  573. GO
  574. ALTER TABLE ps_endpoints ADD set_var TEXT NULL;
  575. GO
  576. EXEC sp_rename 'ps_endpoints.mwi_fromuser', mwi_from_user, 'COLUMN';
  577. GO
  578. ALTER TABLE ps_contacts ADD outbound_proxy VARCHAR(40) NULL;
  579. GO
  580. ALTER TABLE ps_contacts ADD path TEXT NULL;
  581. GO
  582. ALTER TABLE ps_aors ADD maximum_expiration INTEGER NULL;
  583. GO
  584. ALTER TABLE ps_aors ADD outbound_proxy VARCHAR(40) NULL;
  585. GO
  586. ALTER TABLE ps_aors ADD support_path VARCHAR(3) NULL;
  587. GO
  588. ALTER TABLE ps_aors ADD CONSTRAINT yesno_values CHECK (support_path IN ('yes', 'no'));
  589. GO
  590. -- Running upgrade 2fc7930b41b3 -> 21e526ad3040
  591. ALTER TABLE ps_globals ADD debug VARCHAR(40) NULL;
  592. GO
  593. -- Running upgrade 21e526ad3040 -> 28887f25a46f
  594. CREATE TABLE queues (
  595. name VARCHAR(128) NOT NULL,
  596. musiconhold VARCHAR(128) NULL,
  597. announce VARCHAR(128) NULL,
  598. context VARCHAR(128) NULL,
  599. timeout INTEGER NULL,
  600. ringinuse VARCHAR(3) NULL,
  601. setinterfacevar VARCHAR(3) NULL,
  602. setqueuevar VARCHAR(3) NULL,
  603. setqueueentryvar VARCHAR(3) NULL,
  604. monitor_format VARCHAR(8) NULL,
  605. membermacro VARCHAR(512) NULL,
  606. membergosub VARCHAR(512) NULL,
  607. queue_youarenext VARCHAR(128) NULL,
  608. queue_thereare VARCHAR(128) NULL,
  609. queue_callswaiting VARCHAR(128) NULL,
  610. queue_quantity1 VARCHAR(128) NULL,
  611. queue_quantity2 VARCHAR(128) NULL,
  612. queue_holdtime VARCHAR(128) NULL,
  613. queue_minutes VARCHAR(128) NULL,
  614. queue_minute VARCHAR(128) NULL,
  615. queue_seconds VARCHAR(128) NULL,
  616. queue_thankyou VARCHAR(128) NULL,
  617. queue_callerannounce VARCHAR(128) NULL,
  618. queue_reporthold VARCHAR(128) NULL,
  619. announce_frequency INTEGER NULL,
  620. announce_to_first_user VARCHAR(3) NULL,
  621. min_announce_frequency INTEGER NULL,
  622. announce_round_seconds INTEGER NULL,
  623. announce_holdtime VARCHAR(128) NULL,
  624. announce_position VARCHAR(128) NULL,
  625. announce_position_limit INTEGER NULL,
  626. periodic_announce VARCHAR(50) NULL,
  627. periodic_announce_frequency INTEGER NULL,
  628. relative_periodic_announce VARCHAR(3) NULL,
  629. random_periodic_announce VARCHAR(3) NULL,
  630. retry INTEGER NULL,
  631. wrapuptime INTEGER NULL,
  632. penaltymemberslimit INTEGER NULL,
  633. autofill VARCHAR(3) NULL,
  634. monitor_type VARCHAR(128) NULL,
  635. autopause VARCHAR(3) NULL,
  636. autopausedelay INTEGER NULL,
  637. autopausebusy VARCHAR(3) NULL,
  638. autopauseunavail VARCHAR(3) NULL,
  639. maxlen INTEGER NULL,
  640. servicelevel INTEGER NULL,
  641. strategy VARCHAR(11) NULL,
  642. joinempty VARCHAR(128) NULL,
  643. leavewhenempty VARCHAR(128) NULL,
  644. reportholdtime VARCHAR(3) NULL,
  645. memberdelay INTEGER NULL,
  646. weight INTEGER NULL,
  647. timeoutrestart VARCHAR(3) NULL,
  648. defaultrule VARCHAR(128) NULL,
  649. timeoutpriority VARCHAR(128) NULL,
  650. PRIMARY KEY (name),
  651. CONSTRAINT yesno_values CHECK (ringinuse IN ('yes', 'no')),
  652. CONSTRAINT yesno_values CHECK (setinterfacevar IN ('yes', 'no')),
  653. CONSTRAINT yesno_values CHECK (setqueuevar IN ('yes', 'no')),
  654. CONSTRAINT yesno_values CHECK (setqueueentryvar IN ('yes', 'no')),
  655. CONSTRAINT yesno_values CHECK (announce_to_first_user IN ('yes', 'no')),
  656. CONSTRAINT yesno_values CHECK (relative_periodic_announce IN ('yes', 'no')),
  657. CONSTRAINT yesno_values CHECK (random_periodic_announce IN ('yes', 'no')),
  658. CONSTRAINT yesno_values CHECK (autofill IN ('yes', 'no')),
  659. CONSTRAINT queue_autopause_values CHECK (autopause IN ('yes', 'no', 'all')),
  660. CONSTRAINT yesno_values CHECK (autopausebusy IN ('yes', 'no')),
  661. CONSTRAINT yesno_values CHECK (autopauseunavail IN ('yes', 'no')),
  662. CONSTRAINT queue_strategy_values CHECK (strategy IN ('ringall', 'leastrecent', 'fewestcalls', 'random', 'rrmemory', 'linear', 'wrandom', 'rrordered')),
  663. CONSTRAINT yesno_values CHECK (reportholdtime IN ('yes', 'no')),
  664. CONSTRAINT yesno_values CHECK (timeoutrestart IN ('yes', 'no'))
  665. );
  666. GO
  667. CREATE TABLE queue_members (
  668. queue_name VARCHAR(80) NOT NULL,
  669. interface VARCHAR(80) NOT NULL,
  670. uniqueid VARCHAR(80) NOT NULL,
  671. membername VARCHAR(80) NULL,
  672. state_interface VARCHAR(80) NULL,
  673. penalty INTEGER NULL,
  674. paused INTEGER NULL,
  675. PRIMARY KEY (queue_name, interface)
  676. );
  677. GO
  678. -- Running upgrade 28887f25a46f -> 4c573e7135bd
  679. ALTER TABLE ps_endpoints ALTER COLUMN tos_audio VARCHAR(10);
  680. GO
  681. ALTER TABLE ps_endpoints ALTER COLUMN tos_video VARCHAR(10);
  682. GO
  683. ALTER TABLE ps_transports ALTER COLUMN tos VARCHAR(10);
  684. GO
  685. ALTER TABLE ps_endpoints DROP COLUMN cos_audio;
  686. GO
  687. ALTER TABLE ps_endpoints DROP COLUMN cos_video;
  688. GO
  689. ALTER TABLE ps_transports DROP COLUMN cos;
  690. GO
  691. ALTER TABLE ps_endpoints ADD cos_audio INTEGER NULL;
  692. GO
  693. ALTER TABLE ps_endpoints ADD cos_video INTEGER NULL;
  694. GO
  695. ALTER TABLE ps_transports ADD cos INTEGER NULL;
  696. GO
  697. -- Running upgrade 4c573e7135bd -> 3855ee4e5f85
  698. ALTER TABLE ps_endpoints ADD message_context VARCHAR(40) NULL;
  699. GO
  700. ALTER TABLE ps_contacts ADD user_agent VARCHAR(40) NULL;
  701. GO
  702. -- Running upgrade 3855ee4e5f85 -> e96a0b8071c
  703. ALTER TABLE ps_globals ALTER COLUMN user_agent VARCHAR(255);
  704. GO
  705. ALTER TABLE ps_contacts ALTER COLUMN id VARCHAR(255);
  706. GO
  707. ALTER TABLE ps_contacts ALTER COLUMN uri VARCHAR(255);
  708. GO
  709. ALTER TABLE ps_contacts ALTER COLUMN user_agent VARCHAR(255);
  710. GO
  711. ALTER TABLE ps_registrations ALTER COLUMN client_uri VARCHAR(255);
  712. GO
  713. ALTER TABLE ps_registrations ALTER COLUMN server_uri VARCHAR(255);
  714. GO
  715. -- Running upgrade e96a0b8071c -> c6d929b23a8
  716. CREATE TABLE ps_subscription_persistence (
  717. id VARCHAR(40) NOT NULL,
  718. packet VARCHAR(2048) NULL,
  719. src_name VARCHAR(128) NULL,
  720. src_port INTEGER NULL,
  721. transport_key VARCHAR(64) NULL,
  722. local_name VARCHAR(128) NULL,
  723. local_port INTEGER NULL,
  724. cseq INTEGER NULL,
  725. tag VARCHAR(128) NULL,
  726. endpoint VARCHAR(40) NULL,
  727. expires INTEGER NULL,
  728. UNIQUE (id)
  729. );
  730. GO
  731. CREATE INDEX ps_subscription_persistence_id ON ps_subscription_persistence (id);
  732. GO
  733. -- Running upgrade c6d929b23a8 -> 51f8cb66540e
  734. ALTER TABLE ps_endpoints ADD force_avp VARCHAR(3) NULL;
  735. GO
  736. ALTER TABLE ps_endpoints ADD CONSTRAINT yesno_values CHECK (force_avp IN ('yes', 'no'));
  737. GO
  738. ALTER TABLE ps_endpoints ADD media_use_received_transport VARCHAR(3) NULL;
  739. GO
  740. ALTER TABLE ps_endpoints ADD CONSTRAINT yesno_values CHECK (media_use_received_transport IN ('yes', 'no'));
  741. GO
  742. -- Running upgrade 51f8cb66540e -> 1d50859ed02e
  743. ALTER TABLE ps_endpoints ADD accountcode VARCHAR(20) NULL;
  744. GO
  745. -- Running upgrade 1d50859ed02e -> 1758e8bbf6b
  746. ALTER TABLE sippeers ALTER COLUMN useragent VARCHAR(255);
  747. GO
  748. -- Running upgrade 1758e8bbf6b -> 5139253c0423
  749. ALTER TABLE queue_members DROP COLUMN uniqueid;
  750. GO
  751. ALTER TABLE queue_members ADD uniqueid INTEGER NOT NULL;
  752. GO
  753. ALTER TABLE queue_members ADD UNIQUE (uniqueid);
  754. GO
  755. -- Running upgrade 5139253c0423 -> d39508cb8d8
  756. CREATE TABLE queue_rules (
  757. rule_name VARCHAR(80) NOT NULL,
  758. time VARCHAR(32) NOT NULL,
  759. min_penalty VARCHAR(32) NOT NULL,
  760. max_penalty VARCHAR(32) NOT NULL
  761. );
  762. GO
  763. -- Running upgrade d39508cb8d8 -> 5950038a6ead
  764. ALTER TABLE ps_transports ALTER COLUMN verifiy_server VARCHAR(3);
  765. GO
  766. EXEC sp_rename 'ps_transports.verifiy_server', verify_server, 'COLUMN';
  767. GO
  768. ALTER TABLE ps_transports ADD CONSTRAINT yesno_values CHECK (verifiy_server IN ('yes', 'no'));
  769. GO
  770. -- Running upgrade 5950038a6ead -> 10aedae86a32
  771. ALTER TABLE sippeers DROP CONSTRAINT sip_directmedia_values;
  772. GO
  773. ALTER TABLE sippeers ALTER COLUMN directmedia VARCHAR(8);
  774. GO
  775. ALTER TABLE sippeers ADD CONSTRAINT sip_directmedia_values_v2 CHECK (directmedia IN ('yes', 'no', 'nonat', 'update', 'outgoing'));
  776. GO
  777. INSERT INTO alembic_version (version_num) VALUES ('10aedae86a32');
  778. GO
  779. COMMIT;