ВЫвод звука в типовой

1. aipo 01.10.23 17:28 Сейчас в теме
Как в в Типовых реализован вывод звука при получении сообщения в Обсуждениях? Не могу найти в конфигурации КА2. Подскажите где находится процедура или функция? Как воспроизводится в типовой звук?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. karamazoff 94 01.10.23 23:29 Сейчас в теме
(1)Следующий вопрос - как воспроизводится ролик в ютубе? Звук воспроизводится средствами операционной системы, 1с к этому руку не прилагала, без обид!
5. aipo 02.10.23 13:27 Сейчас в теме
(2)
При получении сообщения проигрывается звук. Вот я пытаюсь как это реализовано в типовой КА
Прикрепленные файлы:
9. user1880116 02.10.23 15:51 Сейчас в теме
(1)
Как в в Типовых реализован вывод звука
Платформой.

ОтображениеОповещенийСистемыВзаимодействия (CollaborationSystemNotificationRepresentation)
НеБеспокоить (DontDisturb)
Описание:
При получении нового сообщения всплывающее оповещение не отображается и звук не воспроизводится.

ОтображениеОповещенийСистемыВзаимодействия (CollaborationSystemNotificationRepresentation)
Обычное (Normal)
Описание:
При получении нового сообщения отображается всплывающее оповещение и воспроизводится звук.
11. aipo 02.10.23 17:35 Сейчас в теме
(9)
ОтображениеОповещенийСистемыВзаимодействия

Спасибо! Понятно
3. user5300 970 02.10.23 08:00 Сейчас в теме
+ Динамики еще нужно подключить
user1880116; +1 Ответить
4. aipo 02.10.23 13:22 Сейчас в теме
(3) напиши, что еще надо включить комп.
12. user5300 970 03.10.23 09:05 Сейчас в теме
(4) А если без шуток - могу предложить костыль, реализовал у себя подобное:

/// Подключаем объекты при открытии, что бы не подключать их каждый раз при вызове
&НаКлиенте
Перем oVoice, oSpFileStream, ИмяФайлаЗвука;


&НаКлиенте
Процедура ПриОткрытии(Отказ) 
	//ИмяФайлаЗвука = "ЗвукОшибки1";
	//ИмяФайлаЗвука = "Голос";   
	ПодключитьЗвукОшибки();
КонецПроцедуры


&НаКлиенте
Процедура Кнопка1(Команда)	
	Контрагент = "";
	/// Если голосовое предупреждение
	Если не ЗначениеЗаполнено(Контрагент) Тогда
		ВоспроизвестиЗвукОшибки("Не заполнен контрагент!");
		Возврат;
	КонецЕсли;		
	
	/// воспроизведение обычного сигнала ошибки или не только ошибки, а успешного выполнения
	Если Контрагент = Справочники.Контрагенты.ПустаяСсылка() Тогда
		ВоспроизвестиЗвукОшибки();
		Возврат;
	КонецЕсли;
	
КонецПроцедуры





#Область РаботаСоЗвуковымОповещением


&НаКлиенте
Процедура ПодключитьЗвукОшибки(ИмяФайлаЗвука = Неопределено)
	
	
	Попытка
		Если oVoice = Неопределено ИЛИ oSpFileStream  = Неопределено Тогда
			oVoice = Новый COMObject("SAPI.SpVoice");           
			oSpFileStream = Новый COMObject("SAPI.SpFileStream");
		КонецЕсли;
	Исключение 
		Возврат;
	КонецПопытки;
	
	Если ИмяФайлаЗвука = Неопределено Тогда
		ИмяФайлаЗвука = "ЗвукОшибки1";         /// ЗвукОшибки1 - это макет с двоичными данными с типом  .wav
	ИначеЕсли ИмяФайлаЗвука = "Голос" Тогда   /// "Голос" - это просто переменная, для воспроизведения голосом
		Возврат;
	КонецЕсли;
	
	ИмяФайла = КаталогВременныхФайлов() + ИмяФайлаЗвука + ".wav";
	ФайлНаДиске = Новый Файл(ИмяФайла);
    Если НЕ ФайлНаДиске.Существует() Тогда
		Звук = ПолучитьЗвукОшибки(ИмяФайлаЗвука);
		Звук.Записать(ИмяФайла);
	КонецЕсли;
	oSpFileStream.Open(ИмяФайла);
	
КонецПроцедуры

&НаСервере
Функция ПолучитьЗвукОшибки(ИмяФайла)
	Возврат Обработки.ПечатьКодовМаркировок.ПолучитьМакет(ИмяФайла);	
КонецФункции


&НаКлиенте
Процедура ВоспроизвестиЗвукОшибки(Текст = "")
	попытка
		Если oVoice = Неопределено ИЛИ oSpFileStream  = Неопределено Тогда
			Возврат;
		КонецЕсли;
		Если ИмяФайлаЗвука = "Голос" Тогда
			oVoice.Rate = 3 ;
			oVoice.Speak("Внимание!" + Текст,1);
		Иначе
			//oSpFileStream.Open(ИмяФайла);
			oVoice.SpeakStream(oSpFileStream,1);
			//oSpFileStream.Close();
		КонецЕсли;
	Исключение
	КонецПопытки;
КонецПроцедуры



#КонецОбласти



&НаКлиенте
Процедура ПриЗакрытии()

	Если НЕ oSpFileStream  = Неопределено Тогда
		Попытка
			oSpFileStream.Close();
		Исключение
		КонецПопытки;
	КонецЕсли;	
КонецПроцедуры
Показать
13. aipo 04.10.23 11:41 Сейчас в теме
(12)
У меня вывод звука так же организован
Процедура ПроигратьЗвук()
ПутьДоФайла = "C:\chord1.wav";

oVoice = Новый COMObject("SAPI.SpVoice");

oSpFileStream = Новый COMObject("SAPI.SpFileStream");
oSpFileStream.Open(ПутьДоФайла);
oVoice.SpeakStream(oSpFileStream);
oSpFileStream.Close();

КонецПроцедуры
Хотел посмотреть реализацию в типовой
6. Nadushka74 5 02.10.23 14:54 Сейчас в теме
7. aipo 02.10.23 15:31 Сейчас в теме
(6) Я спрашиваю как реализовано в типовой. В глобальном поиске по конфигурации, я первое что сделал, так поискал Сигнал(). Не нашел.
8. igor63 02.10.23 15:46 Сейчас в теме
(7) Для обсуждений же свой софт стоит
10. Sashares 34 02.10.23 16:32 Сейчас в теме
(7)Если вы еще не поняли, то вам намекают, что это платформенный механизм.
Никакого вывода звука кодом при получении сообщений в типовых нет.
Оставьте свое сообщение
Вакансии
Программист 1С
Кемерово
зарплата от 200 000 руб.
Полный день

Программист 1С
Киров (Кировская обл.)
зарплата от 100 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 150 000 руб.
Полный день

Архитектор 1С
Москва
зарплата от 250 000 руб.
Полный день

1С-Программист (интегратор Битрикс24)
Санкт-Петербург
зарплата от 150 000 руб. до 250 000 руб.
Полный день