åãå·ãž
æè¿ã§ã¯ãFreeSWITCHãã»ããã¢ããããããã®
ããŒãã·ãŒããèªåã§æžããŸããã ããã«èšèŒãããŠããã»ããã¢ããããã»ã¹ã¯ããã¹ãæ¡ä»¶äžã§åäœããæ§æã«ã€ãªãããŸããã ãã®ãã¹ãã¯ãçµç¹ãç§»åããéçšç°å¢ã§ãã¬ãã©ããŒãéå§ããåŸãäœãåŠçãããã®äºåçãªã¢ã€ãã¢ãäœæããããã«å¿
èŠã§ããã ãã ããç§»åãè¡ãããæ¥ç¶ãåäœã¢ãŒãã§éå§ããããšããæåã®ã€ã³ã¯ã«ãŒãžã§ã³ã§ã¯ãæ§æãåäœããŠããªãã£ãããšã瀺ãããŸãããå
éšã³ãŒã«ã¯åæ¢ããŸããã
ããŒãã·ãŒããæžã蟌ãŸããæçµã»ããã¢ãããšãã«ã¹ãã§ãã¯ã®ç¬éãããåäœã¢ãŒãã§ã¹ã€ãããå
¥ãããšããèšå®ã«å€æŽãå ããããªãã£ããããããã¯ç§ã«ãšã£ãŠå®å
šãªé©ãã§ããã çŽæ¥çãªéœåžçªå·ïŒçŽ60åã®æ°åã®æ«å°ŸïŒãå²ãåœãŠãããåŸæ¥å¡ã®çä¿¡ããã³çºä¿¡ã³ãŒã«ã«å¯ŸããŠãå
éšçªå·ãšã«ãŒãã®ã¿ãäžæ¬ããŠè¿œå ãããŸããã
ãããã°ãè¡ããã劚害ãæããã«ãªãããã¹ãŠæ©èœããŸããã ããããæŸèæã®æèŠããããŸããã ç§ã¯ããã説æããŸããããªããªããç§ã¯é©çšããã解決çãæ£ãããšç¢ºä¿¡ããŠããããã§ãã ããã«ããã¥ã¢ã³ã¹ãæç¢ºã«ãªããŸãããå
éšããå€éšãžã®çºä¿¡ã³ãŒã«ã«ã€ããŠã¯ã
default_provider_usernameãã£ãŒã«ãã®SIPãã©ã³ã¯èšå®ã§æå®ãããçªå·ã®ã¿ã
決å®ãããŸãã ã
<X-PRE-PROCESS cmd="set" data="default_provider_username=3435555555"/>
å å
¥è
çªå·ã®æ§æã«ç€ºãããŠãããã®ã§ã¯ãããŸããã
<variable name="outbound_caller_id_name" value="3435555566"/>
ãããã€ããŒã®ãã¯ãã«ã«ãµããŒãã¯ã
Fromãã£ãŒã«ãã§ç§ãã¡ãããããã«å°çãããã¹ãŠã®ã³ãŒã«ã«ã¯ãæ£ç¢ºã«
3435555555çªå·ãã€ãŸããç§ã®åŽã®æšªæ£ãããããšãå ±åããŸããã ããã«ãç§ã¯çªç¶é»è©±ã転éããã¿ã¹ã¯ã«å®å
šã«é»è©±ãåã£ãã ãããŠãã±ãŒãã®æ¡ã¯ãã³ãŒã«ã®è»¢éãæåŠããEricsson Dialog 4422ããã€ã¹ãšãèšå®ã«ãã®ãããªèšå®ã®ããããªãã³ãããªãå Žåãæ¥ç¶æéã®å¶éã90ã100ç§ã§ãããšæ±ºå®ããCisco 7945gããã€ã¹ã«ããè³ã®é€å»ã§ããã åæã«ãYealink T21 E2ããã€ã¹ã¯å®å
šã«åé¡ãªãåäœããŸããã
ãã®æ®µéã§ãé»è©±ã®åéã§èªåã®èœåã®éçã«éããããšã«æ°ä»ãããã¹ãŠãèœã¡çããŠé ã«åãŸãããã«ã¿ã€ã ã¢ãŠãããŸããã ãŸãããã®æ±ºå®ã¯ãäŒæ¥æ¥ã®ãªã2é±éã®çµ¶å¯Ÿçãªéçã®åŸãçµç¹ã®æ°ããå Žæã«å°çããçŽåŸã«äžèŠåãªåŽåæéã䌎ãäžè¬çãªç²åŽã®ãããéåžžã«åŒ·åã§ããã
Fusionpbx
ã³ã³ãœãŒã«ã«ãŒã«ãšããã¹ãèšå®ã®ã°ã©ãã£ã«ã«ã€ã³ã¿ãŒãã§ã€ã¹ã«å¯Ÿããåæ
ããªãã£ãã«ãããããããFusionPBXãšåŒã°ããWebããºã«ã䜿çšãããœãªã¥ãŒã·ã§ã³ã«ç®ãåãå§ããŸããã ãã®ãããªç¬èªã®ååã®è£åãã®æåã®çç±ã¯ãåæ©èœèŠçŽ ã®èšå®ã®ããªã¥ãŒã å
šäœããå®è¡å¯èœãªãç®±ããåºãããæ§æã®åœ¢ã§1ãæã«éããããšããæ¬²æ±ã§ããã ããã¯ãŸãã«ã°ã©ãã£ã«ã«ã€ã³ã¿ãŒãã§ãŒã¹ãæäŸãããã®ã§ãã ããèãæãããã°ã©ãã£ã«ã«ã€ã³ã¿ãŒãã§ã€ã¹ã®è¿œå ã®ããŒãã¹ã¯ãã¢ãžã¥ãŒã«ãšæ©èœéã®é¢ä¿ãèŠèŠçã«è¡šçŸããããšã§ãã åå¿è
ã«ãšã£ãŠïŒå人çã«ã¯ïŒãç¹å®ã®å®è£
æ¹æ³ã䜿çšããæœè±¡åã®ã¬ãã«ãäœãã»ã©ããã®ããšã®ä»çµã¿ã®åŠç¿ãšçè§£ãéããªããŸãã 2çªç®ã®çç±ã¯
www.pbxforums.comã§ ã
FreeSWITCHã®æ
å ±ãæ€çŽ¢ãããšãã«ãªã³ã¯ãä»ããŠååŸããŸããããç®èãªããšã«ãFusionPBXèšå®ããŒãžã®ã¹ã¯ãªãŒã³ã·ã§ããã§ããã
FusionPBXã¯ãããŒã¿ããŒã¹ã«Webéå£ãšèšå®ãä¿åãããŠããFreeSWITCHã§ãã ç¡äººã€ã³ã¹ããŒã«ã¹ã¯ãªããã¯ãFreeSWITCHãNginxãPostgreSQLãããã³å®éã«ã¯FusionPBXèªäœã®Webã€ã³ã¿ãŒãã§ã€ã¹ã®äž¡æ¹ãã€ã³ã¹ããŒã«ããŸãã ç§ã¯ãã®ç¬éã«ãã ããã€ããã¯ãããŸããããã¹ãŠã¯ããã¥ã¡ã³ãã®æç€ºã«åŸã£ãŠããããããšãªãèšå®ãããŠããŸãã éçºè
ãæšå¥šãã64ãããDebian 8ã«ãã¹ãŠã眮ããŸããã
å å
¥è
çªå·ã®ã€ã³ããŒãããã§ã¯ãå å
¥è
çªå·ãšçä¿¡ã«ãŒããèšå®ããããã»ã¹ã¯èæ
®ãããŸããã ãã®ããã»ã¹ã¯å
¬åŒããã¥ã¡ã³ãã«èšèŒãããŠããŸãã
代ããã«ããã¹ãŠãäžæ¬ã§ã€ã³ããŒãããæé ã«ã€ããŠèª¬æããŸãã ãã®æé ãå®è¡ããããã®èª¬æãããã¥ã¢ã«ããã³ãã¯èŠã€ãããŸããã§ããã
ã€ã³ã¹ããŒã«ã®æåŸã«ãAdminerïŒphpMyAdminã®ã¢ããã°ïŒãžã®èªåãã°ã€ã³ãæå¹ã«ããŸãã
詳现èšå®âããã©ã«ãèšå® ïŒ
auto_login
Value : true
Enabled : true
çŸåšã®ããŒãžã®å€ã倿ŽããåŸãããã©ã«ãèšå®ããŒãžã®ãå
èªã¿èŸŒã¿ ãã§ãä¿å ããã¯ãªãã¯ã
ãŸã ã
管çè
ïŒ
詳现èšå®â管çè
ã«ç§»åããŸãã
次ã®è¡šã¯ãç§ãã¡ã«ãšã£ãŠè峿·±ããã®ã§ãã
v_extensions-ãµãã¹ã¯ã©ã€ããŒçªå·ã
v_destinations-å
éšå å
¥è
çªå·ã«å²ãåœãŠãããéœåžçªå·ãžã®çä¿¡ã³ãŒã«ã®ã«ãŒãã
v_dialplans -
dialplansãã£ã¬ã¯ããªã
v_dialplan_details-çä¿¡ã³ãŒã«ã®
ãã€ã€ã«ãã©ã³èšå®ã
v_voicemails-ãã€ã¹ã¡ãŒã«èšå®ã
ã¿ã¹ã¯ã®ã¹ããŒãã¡ã³ãã¯æ¬¡ã®ãšããã§ããïŒADåããåŸæ¥å¡ãšãã®å
éšé»è©±çªå·ãã¢ã³ããŒãããCSVãã¡ã€ã«ã«ã¢ããããŒããä¿åãããµãã¹ã¯ã©ã€ããŒçªå·ãšãã€ã¹ã¡ãŒã«èšå®ã®ããŒãã«ã®ããŒã¿ããŒã¹ã«ã€ã³ããŒãããŸãïŒãã€ã¹ã¡ãŒã«ã¯ç¡å¹ã«ããå¿
èŠããããŸãïŒã
éœåžçªå·ãšå
ç·çªå·ã®å¯Ÿå¿ãã£ã¬ã¯ããªã䜿çšããŠãçä¿¡ã³ãŒã«ã®ã«ãŒããšãã€ã€ã«ãã©ã³ãå«ãããŒãã«ã«ã€ã³ããŒãããããã®CSVãã¡ã€ã«ãäœæããŸãã
ãã®ã¿ã¹ã¯ãè©³çŽ°ã«æ€èšããã®ã§ã¯ãªãã宿ããã¹ã¯ãªããããã¿ãã¬ã®äžã«é ãã ãã§ãã
泚æïŒ
ææ¡ãããã¹ã¯ãªããã¯ãèªèº«ã®è²¬ä»»ã§äœ¿çšããŠãã ãããäœæè
ã¯ã誀ã£ã䜿çšãŸãã¯æ£ãã䜿çšã«ããäºæããªãå¯äœçšã«ã€ããŠè²¬ä»»ãè² ããŸããã
- $ nums倿°ããæ°å€ã«äžèŽããå€ã«èšå®ããŸãã
- ã¹ã¯ãªããã䜿çšããåã«ããã¡ã€ã³UUIDãåžžã«ã€ã³ã¹ããŒã«äžã«ãã¡ã€ã³ã«å²ãåœãŠãããå€ïŒ domain_uuidãã£ãŒã«ãïŒã«çœ®ãæããå¿
èŠããããŸãã
- ãã¡ã€ã³ã®IPã¢ãã¬ã¹ïŒ172.18.253.1ïŒãèªåã®ãã®ã«çœ®ãæããå¿
èŠããããŸãã
- -SearchBaseã¹ã€ããã®å€ã調æŽããããšãå¿ããªãã§ãã ããã ãOU =ãšã«ããªã³ãã«ã°ãDC = dcãDC =ãã¡ã€ã³ãDC =ããŒã«ã«ãã§ã¯ãªããµã³ããªã³ã°ãšãªã¢ã瀺ããŸãã
- ãã€ã¹ã¡ãŒã«ã¢ããªã±ãŒã·ã§ã³ã®UUIDïŒ app_uuidãã£ãŒã«ãïŒããã€ã³ã¹ããŒã«äžã«å²ãåœãŠãããUUIDã«çœ®ãæããããŸãã
- UUIDã®å€ã¯ãããšãã°v_dialplansããŒãã«ã§è¡šç€ºã§ããŸãã
- ãã¹ãŠã®å å
¥è
çªå·ã«ã¯ç»é²çšã®ãã¹ã¯ãŒãã12345ããå²ãåœãŠããããã€ã¹ã¡ãŒã«ããã³ä»ã®ãµãŒãã¹ã®ãã¹ã¯ãŒãã¯å å
¥è
çªå·ãšåãã«ãªããŸãã
- ã¹ã¯ãªããã¯ãã¡ã€ã«ã1è¡ãã€è¿œå ããŸãïŒ ãããã£ãŠãåã¹ã¯ãªãããå®è¡ããåã«ãã¡ã€ã«ãåé€ãããããã®å
å®¹ãæ¶å»ããããšãå¿ããªãã§ãã ããïŒ
ã
å å
¥è
çªå·ãšãã€ã¹ã¡ãŒã« $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False $nums=@{=;=} [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) Get-ADUser -Filter * -SearchBase -Properties Telephonenumber,sn,initials,cn|%{ if(-not $_.Telephonenumber -eq ){ if($nums.Get_Item($_.Telephonenumber) -eq $null) {$outn = } else {$outn = $nums.Get_Item($_.Telephonenumber)} $extension_uuid = (New-Guid).Tostring() $domain_uuid = ## !!! $extension = $_.Telephonenumber $number_alias = $password = $accountcode = $effective_caller_id_name = $_.sn + + $_.initials $effective_caller_id_number = $extension $outbound_caller_id_name = $outn $outbound_caller_id_number = $outn $emergency_caller_id_name = $effective_caller_id_name $emergency_caller_id_number = $extension $directory_full_name = $_.cn $directory_visible = $directory_exten_visible = $limit_max = $limit_destination = $missed_call_app = $missed_call_data = $user_context = $toll_allow = $call_timeout = $call_group = $call_screen_enabled = $user_record = $hold_music = $auth_acl = $cidr = $sip_force_contact = $nibble_account = $sip_force_expires = $mwi_account = $sip_bypass_media = $unique_id = $dial_string = $dial_user = $dial_domain = $do_not_disturb = $forward_all_destination = $forward_all_enabled = $forward_busy_destination = $forward_busy_enabled = $forward_no_answer_destination = $forward_no_answer_enabled = $follow_me_uuid = $enabled = $description = $_.sn + + $_.initials $forward_caller_id_uuid = $absolute_codec_string = $forward_user_not_registered_destination = $forward_user_not_registered_enabled = $force_ping = $csv=$toll_allow`$force_ping` [System.IO.File]::AppendAllText(, $csv, $Utf8NoBomEncoding) $voicemail_uuid = (New-Guid).Tostring() $voicemail_id = $extension $voicemail_password = $extension $greeting_id $voicemail_alternate_greet_id $voicemail_mail_to = $voicemail_sms_to $voicemail_attach_file $voicemail_file = $voicemail_local_after_email = $voicemail_enabled = $voicemail_description = $description $voicemail_name_base64 [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding)}}
ïŒ\ v_extensions.csv"ããextension_uuid; domain_uuid;æ¡åŒµ; number_alias;ãã¹ã¯ãŒã; accountcode; effective_caller_id_name; effective_caller_id_number; outbound_caller_id_name; outbound_caller_id_number; emergency_caller_id_name; emergency_caller_id_number; directory_full_name; directory_visible; directory_exten_visible $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False $nums=@{=;=} [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) Get-ADUser -Filter * -SearchBase -Properties Telephonenumber,sn,initials,cn|%{ if(-not $_.Telephonenumber -eq ){ if($nums.Get_Item($_.Telephonenumber) -eq $null) {$outn = } else {$outn = $nums.Get_Item($_.Telephonenumber)} $extension_uuid = (New-Guid).Tostring() $domain_uuid = ## !!! $extension = $_.Telephonenumber $number_alias = $password = $accountcode = $effective_caller_id_name = $_.sn + + $_.initials $effective_caller_id_number = $extension $outbound_caller_id_name = $outn $outbound_caller_id_number = $outn $emergency_caller_id_name = $effective_caller_id_name $emergency_caller_id_number = $extension $directory_full_name = $_.cn $directory_visible = $directory_exten_visible = $limit_max = $limit_destination = $missed_call_app = $missed_call_data = $user_context = $toll_allow = $call_timeout = $call_group = $call_screen_enabled = $user_record = $hold_music = $auth_acl = $cidr = $sip_force_contact = $nibble_account = $sip_force_expires = $mwi_account = $sip_bypass_media = $unique_id = $dial_string = $dial_user = $dial_domain = $do_not_disturb = $forward_all_destination = $forward_all_enabled = $forward_busy_destination = $forward_busy_enabled = $forward_no_answer_destination = $forward_no_answer_enabled = $follow_me_uuid = $enabled = $description = $_.sn + + $_.initials $forward_caller_id_uuid = $absolute_codec_string = $forward_user_not_registered_destination = $forward_user_not_registered_enabled = $force_ping = $csv=$toll_allow`$force_ping` [System.IO.File]::AppendAllText(, $csv, $Utf8NoBomEncoding) $voicemail_uuid = (New-Guid).Tostring() $voicemail_id = $extension $voicemail_password = $extension $greeting_id $voicemail_alternate_greet_id $voicemail_mail_to = $voicemail_sms_to $voicemail_attach_file $voicemail_file = $voicemail_local_after_email = $voicemail_enabled = $voicemail_description = $description $voicemail_name_base64 [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding)}}
; user_context; toll_allow; call_timeout; call_group; call_screen_enabled; user_record; hold_music; auth_acl; CIDR; sip_force_contact; nibble_account; sip_force_expires; mwi_account; sip_bypass_media; UNIQUE_ID; dial_string; dial_user; dial_domain; do_not_disturb; forward_all_destination; forward_all_enabled $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False $nums=@{=;=} [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) Get-ADUser -Filter * -SearchBase -Properties Telephonenumber,sn,initials,cn|%{ if(-not $_.Telephonenumber -eq ){ if($nums.Get_Item($_.Telephonenumber) -eq $null) {$outn = } else {$outn = $nums.Get_Item($_.Telephonenumber)} $extension_uuid = (New-Guid).Tostring() $domain_uuid = ## !!! $extension = $_.Telephonenumber $number_alias = $password = $accountcode = $effective_caller_id_name = $_.sn + + $_.initials $effective_caller_id_number = $extension $outbound_caller_id_name = $outn $outbound_caller_id_number = $outn $emergency_caller_id_name = $effective_caller_id_name $emergency_caller_id_number = $extension $directory_full_name = $_.cn $directory_visible = $directory_exten_visible = $limit_max = $limit_destination = $missed_call_app = $missed_call_data = $user_context = $toll_allow = $call_timeout = $call_group = $call_screen_enabled = $user_record = $hold_music = $auth_acl = $cidr = $sip_force_contact = $nibble_account = $sip_force_expires = $mwi_account = $sip_bypass_media = $unique_id = $dial_string = $dial_user = $dial_domain = $do_not_disturb = $forward_all_destination = $forward_all_enabled = $forward_busy_destination = $forward_busy_enabled = $forward_no_answer_destination = $forward_no_answer_enabled = $follow_me_uuid = $enabled = $description = $_.sn + + $_.initials $forward_caller_id_uuid = $absolute_codec_string = $forward_user_not_registered_destination = $forward_user_not_registered_enabled = $force_ping = $csv=$toll_allow`$force_ping` [System.IO.File]::AppendAllText(, $csv, $Utf8NoBomEncoding) $voicemail_uuid = (New-Guid).Tostring() $voicemail_id = $extension $voicemail_password = $extension $greeting_id $voicemail_alternate_greet_id $voicemail_mail_to = $voicemail_sms_to $voicemail_attach_file $voicemail_file = $voicemail_local_after_email = $voicemail_enabled = $voicemail_description = $description $voicemail_name_base64 [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding)}}
ïŒ\ v_voicemails.csv"ããdomain_uuid; voicemail_uuid; voicemail_id; voicemail_password; greeting_id; voicemail_alternate_greet_id; voicemail_mail_to; voicemail_sms_to; voicemail_attach_file; voicemail_file; voicemail_local_after_email; voicemail_enabled; voicemail_description; voicemail_name_base64`r $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False $nums=@{=;=} [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding) Get-ADUser -Filter * -SearchBase -Properties Telephonenumber,sn,initials,cn|%{ if(-not $_.Telephonenumber -eq ){ if($nums.Get_Item($_.Telephonenumber) -eq $null) {$outn = } else {$outn = $nums.Get_Item($_.Telephonenumber)} $extension_uuid = (New-Guid).Tostring() $domain_uuid = ## !!! $extension = $_.Telephonenumber $number_alias = $password = $accountcode = $effective_caller_id_name = $_.sn + + $_.initials $effective_caller_id_number = $extension $outbound_caller_id_name = $outn $outbound_caller_id_number = $outn $emergency_caller_id_name = $effective_caller_id_name $emergency_caller_id_number = $extension $directory_full_name = $_.cn $directory_visible = $directory_exten_visible = $limit_max = $limit_destination = $missed_call_app = $missed_call_data = $user_context = $toll_allow = $call_timeout = $call_group = $call_screen_enabled = $user_record = $hold_music = $auth_acl = $cidr = $sip_force_contact = $nibble_account = $sip_force_expires = $mwi_account = $sip_bypass_media = $unique_id = $dial_string = $dial_user = $dial_domain = $do_not_disturb = $forward_all_destination = $forward_all_enabled = $forward_busy_destination = $forward_busy_enabled = $forward_no_answer_destination = $forward_no_answer_enabled = $follow_me_uuid = $enabled = $description = $_.sn + + $_.initials $forward_caller_id_uuid = $absolute_codec_string = $forward_user_not_registered_destination = $forward_user_not_registered_enabled = $force_ping = $csv=$toll_allow`$force_ping` [System.IO.File]::AppendAllText(, $csv, $Utf8NoBomEncoding) $voicemail_uuid = (New-Guid).Tostring() $voicemail_id = $extension $voicemail_password = $extension $greeting_id $voicemail_alternate_greet_id $voicemail_mail_to = $voicemail_sms_to $voicemail_attach_file $voicemail_file = $voicemail_local_after_email = $voicemail_enabled = $voicemail_description = $description $voicemail_name_base64 [System.IO.File]::AppendAllText(, , $Utf8NoBomEncoding)}}
ã«ãŒããšãã€ã€ã«ãã¬ãŒã³ $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False [System.IO.File]::AppendAllText("d:\v_destinations.csv", "domain_uuid;destination_uuid;dialplan_uuid;fax_uuid;destination_type;destination_number;destination_number_regex;destination_caller_id_name;destination_caller_id_number;destination_cid_name_prefix;destination_context;destination_app;destination_data;destination_enabled;destination_description;destination_accountcode`r`n", $Utf8NoBomEncoding) [System.IO.File]::AppendAllText("d:\v_dialplans.csv", "domain_uuid;dialplan_uuid;app_uuid;dialplan_context;dialplan_name;dialplan_number;dialplan_continue;dialplan_order;dialplan_enabled;dialplan_description`r`n", $Utf8NoBomEncoding) [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "domain_uuid;dialplan_uuid;dialplan_detail_uuid;dialplan_detail_tag;dialplan_detail_type;dialplan_detail_data;dialplan_detail_break;dialplan_detail_inline;dialplan_detail_group;dialplan_detail_order`r`n", $Utf8NoBomEncoding) $nums="1111=5555555;1112=5555566" $nums.Split(";")|%{ $innum = $_.Split("=")[0] $outnum = $_.Split("=")[1] $domain_uuid = "ffffffff-ffff-ffff-ffff-ffffffffffff" ## !!! $destination_uuid = (New-Guid).Tostring() $dialplan_uuid = (New-Guid).Tostring() $fax_uuid $destination_type = "inbound" $destination_number = "343$outnum" $destination_number_regex = "^(343$outnum)$" $destination_caller_id_name $destination_caller_id_number $destination_cid_name_prefix $destination_context = "public" $destination_app $destination_data $destination_enabled = "true" $destination_description = "$outnum-$innum" $destination_accountcode [System.IO.File]::AppendAllText("d:\v_destinations.csv", "$domain_uuid;$destination_uuid;$dialplan_uuid;$fax_uuid;$destination_type;$destination_number;$destination_number_regex;$destination_caller_id_name;$destination_caller_id_number;$destination_cid_name_prefix;$destination_context;$destination_app;$destination_data;$destination_enabled;$destination_description;$destination_accountcode`r`n", $Utf8NoBomEncoding) $app_uuid = "ffffffff-ffff-ffff-ffff-ffffffffffff" ## !!! $dialplan_context = "public" $dialplan_name = $destination_number $dialplan_number = $destination_number $dialplan_continue = "false" $dialplan_order = "100" $dialplan_enabled = "true" $dialplan_description = $destination_description [System.IO.File]::AppendAllText("d:\v_dialplans.csv", "$domain_uuid;$dialplan_uuid;$app_uuid;$dialplan_context;$dialplan_name;$dialplan_number;$dialplan_continue;$dialplan_order;$dialplan_enabled;$dialplan_description`r`n", $Utf8NoBomEncoding) $dialplan_detail_break $dialplan_detail_inline $dialplan_detail_group $dialplan_detail_uuid = (New-Guid).Tostring() $dialplan_detail_tag = "condition" $dialplan_detail_type = "destination_number" $dialplan_detail_data = "^(343$outnum)$" $dialplan_detail_order = 20 [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "$domain_uuid;$dialplan_uuid;$dialplan_detail_uuid;$dialplan_detail_tag;$dialplan_detail_type;$dialplan_detail_data;$dialplan_detail_break;$dialplan_detail_inline;$dialplan_detail_group;$dialplan_detail_order`r`n", $Utf8NoBomEncoding) $dialplan_detail_uuid = (New-Guid).Tostring() $dialplan_detail_tag = "action" $dialplan_detail_type = "transfer" $dialplan_detail_data = "$innum XML 172.18.253.1" $dialplan_detail_order = 30 [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "$domain_uuid;$dialplan_uuid;$dialplan_detail_uuid;$dialplan_detail_tag;$dialplan_detail_type;$dialplan_detail_data;$dialplan_detail_break;$dialplan_detail_inline;$dialplan_detail_group;$dialplan_detail_order`r`n", $Utf8NoBomEncoding) }
ïŒ\ v_dialplans.csv"ã "domain_uuid; dialplan_uuid; app_uuid; dialplan_context; dialplan_name; dialplan_number; dialplan_continue; dialplan_order; dialplan_enabled; dialplan_description`r`n"ã$ Utf8NoBomEncodingïŒ $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False [System.IO.File]::AppendAllText("d:\v_destinations.csv", "domain_uuid;destination_uuid;dialplan_uuid;fax_uuid;destination_type;destination_number;destination_number_regex;destination_caller_id_name;destination_caller_id_number;destination_cid_name_prefix;destination_context;destination_app;destination_data;destination_enabled;destination_description;destination_accountcode`r`n", $Utf8NoBomEncoding) [System.IO.File]::AppendAllText("d:\v_dialplans.csv", "domain_uuid;dialplan_uuid;app_uuid;dialplan_context;dialplan_name;dialplan_number;dialplan_continue;dialplan_order;dialplan_enabled;dialplan_description`r`n", $Utf8NoBomEncoding) [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "domain_uuid;dialplan_uuid;dialplan_detail_uuid;dialplan_detail_tag;dialplan_detail_type;dialplan_detail_data;dialplan_detail_break;dialplan_detail_inline;dialplan_detail_group;dialplan_detail_order`r`n", $Utf8NoBomEncoding) $nums="1111=5555555;1112=5555566" $nums.Split(";")|%{ $innum = $_.Split("=")[0] $outnum = $_.Split("=")[1] $domain_uuid = "ffffffff-ffff-ffff-ffff-ffffffffffff" ## !!! $destination_uuid = (New-Guid).Tostring() $dialplan_uuid = (New-Guid).Tostring() $fax_uuid $destination_type = "inbound" $destination_number = "343$outnum" $destination_number_regex = "^(343$outnum)$" $destination_caller_id_name $destination_caller_id_number $destination_cid_name_prefix $destination_context = "public" $destination_app $destination_data $destination_enabled = "true" $destination_description = "$outnum-$innum" $destination_accountcode [System.IO.File]::AppendAllText("d:\v_destinations.csv", "$domain_uuid;$destination_uuid;$dialplan_uuid;$fax_uuid;$destination_type;$destination_number;$destination_number_regex;$destination_caller_id_name;$destination_caller_id_number;$destination_cid_name_prefix;$destination_context;$destination_app;$destination_data;$destination_enabled;$destination_description;$destination_accountcode`r`n", $Utf8NoBomEncoding) $app_uuid = "ffffffff-ffff-ffff-ffff-ffffffffffff" ## !!! $dialplan_context = "public" $dialplan_name = $destination_number $dialplan_number = $destination_number $dialplan_continue = "false" $dialplan_order = "100" $dialplan_enabled = "true" $dialplan_description = $destination_description [System.IO.File]::AppendAllText("d:\v_dialplans.csv", "$domain_uuid;$dialplan_uuid;$app_uuid;$dialplan_context;$dialplan_name;$dialplan_number;$dialplan_continue;$dialplan_order;$dialplan_enabled;$dialplan_description`r`n", $Utf8NoBomEncoding) $dialplan_detail_break $dialplan_detail_inline $dialplan_detail_group $dialplan_detail_uuid = (New-Guid).Tostring() $dialplan_detail_tag = "condition" $dialplan_detail_type = "destination_number" $dialplan_detail_data = "^(343$outnum)$" $dialplan_detail_order = 20 [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "$domain_uuid;$dialplan_uuid;$dialplan_detail_uuid;$dialplan_detail_tag;$dialplan_detail_type;$dialplan_detail_data;$dialplan_detail_break;$dialplan_detail_inline;$dialplan_detail_group;$dialplan_detail_order`r`n", $Utf8NoBomEncoding) $dialplan_detail_uuid = (New-Guid).Tostring() $dialplan_detail_tag = "action" $dialplan_detail_type = "transfer" $dialplan_detail_data = "$innum XML 172.18.253.1" $dialplan_detail_order = 30 [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "$domain_uuid;$dialplan_uuid;$dialplan_detail_uuid;$dialplan_detail_tag;$dialplan_detail_type;$dialplan_detail_data;$dialplan_detail_break;$dialplan_detail_inline;$dialplan_detail_group;$dialplan_detail_order`r`n", $Utf8NoBomEncoding) }
ïŒ\ v_dialplan_details.csv"ã "domain_uuid; dialplan_uuid; dialplan_detail_uuid; dialplan_detail_tag; dialplan_detail_type; dialplan_detail_data; dialplan_detail_break; dialplan_detail_inline; dialplan_detail_group; dialplan_detail_order`r`n"ã$ Utf8NoBomEncodingïŒ $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False [System.IO.File]::AppendAllText("d:\v_destinations.csv", "domain_uuid;destination_uuid;dialplan_uuid;fax_uuid;destination_type;destination_number;destination_number_regex;destination_caller_id_name;destination_caller_id_number;destination_cid_name_prefix;destination_context;destination_app;destination_data;destination_enabled;destination_description;destination_accountcode`r`n", $Utf8NoBomEncoding) [System.IO.File]::AppendAllText("d:\v_dialplans.csv", "domain_uuid;dialplan_uuid;app_uuid;dialplan_context;dialplan_name;dialplan_number;dialplan_continue;dialplan_order;dialplan_enabled;dialplan_description`r`n", $Utf8NoBomEncoding) [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "domain_uuid;dialplan_uuid;dialplan_detail_uuid;dialplan_detail_tag;dialplan_detail_type;dialplan_detail_data;dialplan_detail_break;dialplan_detail_inline;dialplan_detail_group;dialplan_detail_order`r`n", $Utf8NoBomEncoding) $nums="1111=5555555;1112=5555566" $nums.Split(";")|%{ $innum = $_.Split("=")[0] $outnum = $_.Split("=")[1] $domain_uuid = "ffffffff-ffff-ffff-ffff-ffffffffffff" ## !!! $destination_uuid = (New-Guid).Tostring() $dialplan_uuid = (New-Guid).Tostring() $fax_uuid $destination_type = "inbound" $destination_number = "343$outnum" $destination_number_regex = "^(343$outnum)$" $destination_caller_id_name $destination_caller_id_number $destination_cid_name_prefix $destination_context = "public" $destination_app $destination_data $destination_enabled = "true" $destination_description = "$outnum-$innum" $destination_accountcode [System.IO.File]::AppendAllText("d:\v_destinations.csv", "$domain_uuid;$destination_uuid;$dialplan_uuid;$fax_uuid;$destination_type;$destination_number;$destination_number_regex;$destination_caller_id_name;$destination_caller_id_number;$destination_cid_name_prefix;$destination_context;$destination_app;$destination_data;$destination_enabled;$destination_description;$destination_accountcode`r`n", $Utf8NoBomEncoding) $app_uuid = "ffffffff-ffff-ffff-ffff-ffffffffffff" ## !!! $dialplan_context = "public" $dialplan_name = $destination_number $dialplan_number = $destination_number $dialplan_continue = "false" $dialplan_order = "100" $dialplan_enabled = "true" $dialplan_description = $destination_description [System.IO.File]::AppendAllText("d:\v_dialplans.csv", "$domain_uuid;$dialplan_uuid;$app_uuid;$dialplan_context;$dialplan_name;$dialplan_number;$dialplan_continue;$dialplan_order;$dialplan_enabled;$dialplan_description`r`n", $Utf8NoBomEncoding) $dialplan_detail_break $dialplan_detail_inline $dialplan_detail_group $dialplan_detail_uuid = (New-Guid).Tostring() $dialplan_detail_tag = "condition" $dialplan_detail_type = "destination_number" $dialplan_detail_data = "^(343$outnum)$" $dialplan_detail_order = 20 [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "$domain_uuid;$dialplan_uuid;$dialplan_detail_uuid;$dialplan_detail_tag;$dialplan_detail_type;$dialplan_detail_data;$dialplan_detail_break;$dialplan_detail_inline;$dialplan_detail_group;$dialplan_detail_order`r`n", $Utf8NoBomEncoding) $dialplan_detail_uuid = (New-Guid).Tostring() $dialplan_detail_tag = "action" $dialplan_detail_type = "transfer" $dialplan_detail_data = "$innum XML 172.18.253.1" $dialplan_detail_order = 30 [System.IO.File]::AppendAllText("d:\v_dialplan_details.csv", "$domain_uuid;$dialplan_uuid;$dialplan_detail_uuid;$dialplan_detail_tag;$dialplan_detail_type;$dialplan_detail_data;$dialplan_detail_break;$dialplan_detail_inline;$dialplan_detail_group;$dialplan_detail_order`r`n", $Utf8NoBomEncoding) }
ã©ã³ãã ã«éžæãããçªå·ãžã®æ¥ç¶ã確èªãããšãã€ã³ããŒãã®ããã©ãŒãã³ã¹ã瀺ãããŸããã
ã²ãŒããŠã§ã€ã®ã»ããã¢ããã¢ã«ãŠã³ãâã²ãŒããŠã§ã€Gateway : 172.16.253.3
Username : 3435555555
Password : not-used
From User : 3435555555
From Domain : 172.16.253.3
Proxy : 172.16.253.3
Register : False
Caller ID In From : True
泚æããŠãã ããïŒ
FusionPBXã®ããã¥ã¡ã³ãã«ã¯ãèšå®ãè¡ãéã«å€ªåã®ãã£ãŒã«ããå¿
é ã§ããããšãæç€ºçã«èšèŒãããŠããŸãã
ãã ãããªãããã®çç±ã§çè§£ã§ããŸããã§ãããã Proxyãã£ãŒã«ãã®èèªå«æéã¯èªèã§ãããå€ãèšå®ããŸããã§ããã ãã®çµæãç§ã¯å€éšããã®é話ãåä¿¡ããŸããããçºä¿¡ã¯åäœããŸããã§ããã sofia status gateway ffffffff-ffff-ffff-ffff-ffffffffffff
ã¯ãæ§æã®ç°åžžã衚瀺ããã ã²ãŒããŠã§ã€å€ã«å¯Ÿå¿ããå²ãåœãŠããããããã·ãã£ãŒã«ãå€ã衚瀺ããŸããã ãŸã£ããåãèšå®ã®ããŒã ããã®ãŸã£ããåãåºåããåã®ã€ã³ã¹ããŒã«ã®ã裞ã®ãFreeSWITCHã«ãã£ãŠå®èšŒããããšåæã«ãå€éšãžã®çºä¿¡ãå®å
šã«åé¡ãªãè¡ãããšãã§ããŸããã
äžæ¹ãFusionPBXã¯ã Proxyã®å€ãæç€ºçã«æå®ããåŸã«ã®ã¿æ©èœããŸããã
* ffffffff-ffff-ffff-ffff-ffffffffffff
ã²ãŒããŠã§ã€UUID
ACLã»ããã¢ããããŒãã·ãŒãã«åŸã£ãŠèšå®ãè¡ããããã«å£ããå
éšã³ãŒã«ãåãåããŸããã ãã°ã¯ãäœããã®çç±ã§ããã€ã¹ããããã
å€éšã³ã³ããã¹ãã«ããããšã瀺ãããããã¯ãç°ãªãããã€ã€ã«ãã³ã«ãã£ãŠåŠçãããããããåŒã³åºããROUTE_NOT_FOUNDãšã©ãŒã§çµäºããããšã瀺ããŸããã
åæ
çãªäœè«ç¶æ³ã®ãŠãŒã¢ã¢ã¯ã ãããã·èšå®ãã²ãŒããŠã§ã€èšå®ã§å¿
é ã§ããããšãçºèŠããåã«ããã®ããã©ãã«ããç§ã«èµ·ãã£ããšããäºå®ã«ããããŸããã ãããŠãACLãèšå®ãããšããã«ãå€éšããã®åŒã³åºããéå§ãããŸããããå
éšã®åŒã³åºãã¯å£ããŸããã ãããŠãACLã䜿çšããŠãã®æå³ãã©ã®ããã«æäœããŠããçµæã¯1ã€ã§ãããå€éšããå
éšãžã®åŒã³åºãããŸãã¯å
éšããå€éšãžãå€éšããå
éšãžã®åŒã³åºãã®ãªãå
éšåŒã³åºãã§ãã
倿ããããã«ãACLæ§æã¯æ£ããå®è¡ãããŸããã§ããïŒ
éèŠïŒ
ACLã¯ããããã¯ãŒã¯ããã³ãã¡ã€ã³ãããã€ããŒå°çšã§ãã
ç¬èªã®ãããã¯ãŒã¯ãšãã¡ã€ã³ãããã«å
¥ããªãã§ãã ããã
ãã¡ã€ã³ãªã¹ãã¯ããã©ã«ãã§æåŠããå¿
èŠããããŸãã
ã«ãŒã«èªäœã¯å¯å®¹ã§ããå¿
èŠãããããã¹ã¯/ 32ãä»ãããããã€ããŒã®ã²ãŒããŠã§ã€ã®IPã¢ãã¬ã¹ãæžã蟌ãŸããŠããå¿
èŠããããŸãã ãã¡ã€ã³ãã£ãŒã«ãã«å
¥åããå¿
èŠã¯ãããŸããã
ããã§ãACLãæ§æããŸãïŒ
詳现èšå®
âã¢ã¯ã»ã¹å¶åŸ¡âãã¡ã€ã³ ã æ¢åã®ã«ãŒã«ãåé€ããæ°ããã«ãŒã«ãäœæããŸãã
Type : allow
CIDR : 172.16.253.3/32
Domain :
Description : default SIP-trunk
æåŸã«[
ä¿å ]ãã¯ãªãã¯ããæ°ããACLãæå¹ã«ããããã«ã[
ã¹ããŒã¿ã¹ ]
â [
Sipã¹ããŒã¿ã¹ ]ãã¯ãªãã¯ãã[
ACLã®ãªããŒã ]ãã¯ãªãã¯ããŸãã
ã·ã¹ãã 倿°è©³çްèšå®âããã©ã«ãèšå®ããã§ã¯ãããŒãã·ãŒãã§1ïŒ1 NATãèšå®ãããšãã«äœ¿çšãããããã€ããŒããæäŸãããå€éšIPã¢ãã¬ã¹ã瀺ããŸããé³å£°å¿çã®å°åã®é»è©±ã³ãŒããèšèªãšé³å£°ãããã³ãã€ã€ã«ããŒã³ã®çš®é¡ã瀺ããŸãã
ããã©ã«ãã»ã¯ã·ã§ã³ïŒ
default_areacode : 343
default_language : ru
default_dialect : RU
default_voice : elena
ringback : $${ru-ring}
transfer_ringback : $${ru-ring}
IPã¢ãã¬ã¹ã»ã¯ã·ã§ã³
external_rtp_ip : 172.16.160.154
external_sip_ip : 172.16.160.154
SIPãããã¡ã€ã«ã»ã¯ã·ã§ã³
ïŒå
éšinternal_auth_calls : true
äºå®ããµãã¹ã¯ã©ã€ããŒçªå·ã®èšå®ãèªã¿åãã
ããããå€
$ {outbound_caller_id_number}ããã³
$ {outbound_caller_id_name}ã転éããã®ã¯ã
çã®å€ã®ãã®å€æ°ã§ãã ãã®å€æ°ãæå¹ã«ããã«ã¯ãACLãä»ããå
éšå å
¥è
çªå·ã®èš±å¯ãç¡å¹ã«ããå¿
èŠããããŸãã ããã©ã«ãã§ã¯ãããã¯ããã©ã«ãã§æ¬¡ã®ããã«è¡ãããŸããACLæ¿èªã¯ãããŸããã代ããã«ãã€ãžã§ã¹ãã䜿çšãããŸãïŒãµãã¹ã¯ã©ã€ããŒçªå·ãšãã¹ã¯ãŒãã«ããïŒïŒ
internal_auth_calls : true
ã
éèŠïŒ
èšå®ã®å
éšçªå·ã«å²ãåœãŠãããçŽæ¥ã®éœåžçªå·ã[ çºä¿¡è
IDå]ããã³[ çºä¿¡è
IDçªå·]ãã£ãŒã«ããä»ããŠæ£ãã倿ããã«ã¯ã次ã®3ã€ã®æ¡ä»¶ãæºãããŠããå¿
èŠããããŸãã
- å
éšãµãã¹ã¯ã©ã€ããŒã®ACLèš±å¯ã®æ¬ åŠ
- SIPãããã¡ã€ã«èšå®ã§ãã€ãžã§ã¹ãèªèšŒãæå¹ã«ããŸããïŒ
internal_auth_calls : true
- ã²ãŒããŠã§ã€èšå®ã®å¯çšæ§ïŒ
Caller ID In From : True
çºä¿¡ã«ãŒããã€ã€ã«ãã©ã³âã¢ãŠãããŠã³ãã«ãŒããããããããã¯åèãããŠããªãå¯äžã®èšå®é
ç®ã§ãã
詳现ã«ã¯åè§£ããŸããã æ¬¡ã®æ£èŠè¡šçŸãããŸããŸãªæ¹åã«äœ¿çšãããããšã«ã®ã¿æ³šæããŠãã ããã
- ã€ã³ãã©ã·ãã£ïŒ
^(\d{7})$
ïŒãŒãããã€ã³ãªã©ã®åœ¢åŒã®ãã¬ãã£ãã¯ã¹ãªãã§ãçŽæ¥åžã®7æ¡ã®çªå·ããã€ã€ã«ããŸãïŒã - éœåžã³ãŒãã«ããéœåžå
ïŒ
^(8343\d{7})$
ïŒéœåž7æ¡ã®çªå·ã«ãã¬ãã£ãã¯ã¹8343ããã€ã€ã«ããïŒã - ã»ã«ã©ãŒïŒ
^(89\d{9})$
ïŒäºå®äžã®æšæºã§ãããã¬ãã£ã¯ã¹8ã®ã»ã«ã©ãŒãžã®åŒã³åºãïŒ - éœåžéïŒ
^(8\d{10})$
ïŒéœåžéé話ãããªãã¿ã®ïŒ8ãåžå€å±çªãå å
¥è
çªå·ïŒ - åœéïŒ
^(810\d+)$
ïŒæšæºãã¬ãã£ãã¯ã¹ã¯810ãåœã³ãŒããåžå€å±çªãå å
¥è
çªå·ïŒã
ãã¹ãŠã®ã«ãŒãã«ã€ããŠã2ã€ã®
ã»ãã ã¢ã¯ã·ã§ã³ã¿ã°ãç·šé
ãããŸãã effective_caller_id_name= ${default_areacode} ${outbound_caller_id_name}
effective_caller_id_number= ${default_areacode} ${outbound_caller_id_number}
ã«ããããªãã¬ãŒã¿ãŒã«éä¿¡ãããçºä¿¡è
çªå·ã«åžå€å±çªãå«ãŸããŸãã
ã·ã¹ã³ããã€ã¹ã§90ã100ç§åŸã«ã³ãŒã«ãªã»ãããåŠçããŸããäžèšã®ããã«ãé©ãã¯ããã¹ãŠã®Cisco 7945gããã€ã¹ã§90ã100ç§åŸã«ç¢ºç«ãããæ¥ç¶ãåæãããããšã§ãã ããã€ã¹æ§æå
ã§å€ããå°ãªããé¢é£ãã倿°åãæã€ãã¹ãŠã®ã¿ã€ããŒã®ãããã¯ãçµæãäžããŸããã§ããã FreeSWITCHã³ã³ãœãŒã«ã§ã®å«ç
èšé²ã«ãããã»ãã·ã§ã³ã®æå¹æéãæããã«ãªããŸããã
ã°ãŒã°ã«ã¯ãCiscoããã€ã¹ãCall Manager以å€ã®äººãšæ£åžžã«åäœããããšãæãŸãªãããšã«å ããŠã
aggressive-nat-detection
倿°ãç¡å¹ã«ããããšã§ãã®åäœãæ¹åã§ããããšãæããã«ããŸããã
詳现èšå®âSIPãããã¡ã€ã«aggressive-nat-detection
Value : true
Enabled : False
é³å£°å¿çã®ãã·ã¢åå©ä»çãªå°éå®¶ã«ãã£ãŠäœæãããé³å£°ãã¡ã€ã«ãå¿
èŠã§ãã
ããŠã³ããŒãïŒ
files.freeswitch.org/releases/sounds/freeswitch-sounds-ru-RU-elena-48000-1.0.51.tar.gzfiles.freeswitch.org/releases/sounds/freeswitch-sounds-ru-RU-elena-32000-1.0.51.tar.gzfiles.freeswitch.org/releases/sounds/freeswitch-sounds-ru-RU-elena-16000-1.0.51.tar.gzfiles.freeswitch.org/releases/sounds/freeswitch-sounds-ru-RU-elena-8000-1.0.51.tar.gzåã¢ãŒã«ã€ãã«ã¯ãæ¢è£œã®ãã£ã¬ã¯ããªæ§é ãå«ãŸããŠããŸãã
/ usr / share / freeswitch / sound /ã®åã¢ãŒã«ã€ããè§£åããŸã
以åã«ããã©ã«ãå€ãèšå®ããŠããã®ã§ããããããã·ã¢èªã®é³å£°ãã¡ã€ã«ãååŸããã远å ã®åããªãã§åçãéå§ãããŸãã ããªããããªããã°ãªããªãïŒç§ãããªããã°ãªããªãã£ãïŒå¯äžã®ããšã¯ã4ã€ã®ãã©ã«ããã¹ãŠã«
ru / RU / elena / voicemail / _bitrate_ /ãã¡ã€ã«
vm-not_available_no_voicemail.wavã®ååã倿Žããæ°ããåå
vm-no_answer_no_vm.wavãäžããããš
ã§ã ã ãã®æäœã®åŸãç§ã¯åŒã³åºãããå å
¥è
ã®ã¢ã¯ã»ã¹äžèœã€ãã³ããžã®é³å£°å¿çãåãåããŸããã
PSïŒ
åã®éšåãšåæ§ã«ããã®ããã¹ãã¯ãééããå°é£ãšãã®è§£æ±ºçãææžåããç®çã§ã®ã¿æžãããŠããŸãã ãã®ããã¹ãã¯ããFree Faceãã®æåããã®ã¯ã€ãã¯ã¹ã¿ãŒãããã°ã©ãã£ãã¯ãã§ã€ã¹ããšã¯ãããç
§ãããŠãããšããäºå®ã«ãããããããããã¹ãã¯èªçµŠèªè¶³ã§ãããäžçš®ã®åå²ã§ãããèªç«ããçæŽ»ã®æš©å©ãæã£ãŠãããšæããŸãã åã®éšåãã説æããããããã¯ãŒã¯æ©åšã®ã»ããã¢ããã«ãããããçšåºŠã®äŸ¡å€ãä¿æããŠããŸãã ãã®ããã¹ãã®èª€ã£ãèšå®ã¯ä¿®æ£ããããã®èšäºã§äœ¿çšãããŠãããã®ã«åæžãããŸãã