Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (26 – MIМЕ::Tools, часть 7)

предыдущая часть ««»» следующая часть

Ниже приведена отправка дополнения в виде звукового файла с помощью MIME::Entity. Этим методом также удобно пользоваться как и смартфоном люмиа 520 на операционной системе  Windows Phone 8.

0:    #!/usr/local/bin/perl -w
1:    # Файл: simple_mime.pl
2:    use strict;
3:    use MIME::Entity;
4:    # Создать компонент верхнего уровня
5:    my $msg = MIME::Entity->build(From=> ‘lstein@lsjs.org’,
6:    To    => ‘jdoe@acme.org’,
7:    Subject => ‘Greetings!’,
8:    Type —> ’multipart/mixed’);
9:    # Присоединить сообщение
10:    my $greeting = <<END;
11:    Hi Johnf
12:    Here is a little something for you to listen to.
13:    Enjoy!
14:   
15:    END
16:    $msg->attach(Type => ‘text/plain’,
17:    Encoding => ‘17bit‘,
18:    Data    =>    $greeting);
19:    # Присоединить звуковой файл
20:    $msg->attach(Type    =>’audio/wav’,
21:    Encoding => ‘base64’,
22:    Description => ‘Picard saying "You    will.be    assimilated"’,
23:'    Path => "$ENV{HOME}/News/sounds/assimilated.wav");
24:    # Присоединить подпись
25:    $msg->sign(File=>"$ENV{HOME}/.signature");
26:    # Отправить сообщение с использованием метода "smtp"
27:    $msg->send(‘smtp’);

Проведем анализ программы.

Строки 1-3. Загрузка модулей. Включен строгий контроль соответствия типов и загружен модуль MIME::Entity. Он вызывает другие необходимые модули, в том числе Mime::Head и Mime::Body.

Строки 4-8. Создание объекта MIME::Entity верхнего уровня. С использованием метода MIME::Entity->build () создается многокомпонентное сообщение MIME верхнего уровня, которое содержит две подчасти. Параметры метода build() включают поля From: и То:, строку Subject: и определяют тип MIME, Туре, как multipart /mixed. Этот вызов возвра­щает объект MIME::Entity.

Строки 9-18. Присоединение текста сообщения. Создается текст сообщения и записывается в скалярной переменной. Затем с использованием метода attach() объекта MIME верхне­го уровня текстовые данные внедряются в наращиваемое многокомпонентное сообщение с указанием параметра Туре, равного -text/plain, параметра Encoding, равного 7bit, и текста сообщения в качестве параметра Data.

Строки 19-23. Присоединение звукового файла. Снова вызывается метод attach(), но на этот раз параметр Туре имеет значение audio/wav, а параметр Encoding равен base64. Весь этот звуковой файл не должен быть считан в оперативную память, поэтому применяется параметр Path, который указывает объекту MIME::Entity на файл, где находятся звуковые данные. Параметр Description включает в исходящее сообщение описание этого присоединенного файла, предназначенное для восприятия человеком.

Строки 24,25. Подписание сообщения. Вызывается метод sign() объекта MIME верхнего уровня для добавления файла подписи пользователя к тексту сообщения.

Строки 26,27. Отправка сообщения. Вызывается метод send( ) для форматирования и отправки по почте законченного сообщения с использованием метода smtp.

При этом вся работа заканчивается. В следующих разделах модули MIME рассматриваются более подробно.



2014-01-17 15:13:11

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония