Как раньше писал Алексей Портнов, у нас в модуле интеграции телефонии и 1С есть внешняя webkit панель. И это не жестко запрограммированная панель с фиксированными границами и кнопками, а небольшая html страничка с полностью открытым исходным кодом, построенная с помощью SDK WebKit для 1С.
Внешний вид и функционал баннера полностью кастомизируемый из 1С и файловой системы. Вы можете отображать в нем любую необходимую информацию, а если для этой информации не хватает места, то баннер можно расширить всего несколькими строчками кода.
Итак, давайте попробуем изменить внешний вид баннера, который мы видим при поступлении входящего вызова.

Я хочу добавить фотографию пользователя из профиля 1С:CRM, и немного поиграть с размером и цветом кнопок.
Первое что нам нужно, это разобраться какие части системы за что отвечают. 
В обработке панель телефонии для управляемых форм есть отдельная форма
Которая отвечает за весь функционал внешнего банера. В ней я добавил несколько дополнительных модулей для получения фотографии из базы данных:
&НаСервере  
Функция ПолучитьФотоBase64НаСервере(Пользователь)
    Если ТипЗнч(Пользователь) <> Тип("СправочникСсылка.Пользователи") Тогда
        Возврат Неопределено;
    КонецЕсли; 
    ФотоBase64 = Неопределено;
    Попытка
        CRM_Фотография = Пользователь.CRM_Фотография;   
    Исключение
        Возврат Неопределено;
    КонецПопытки; 
    Попытка
        ДанныеФайла = Вычислить("ПрисоединенныеФайлы.ПолучитьДанныеФайла(CRM_Фотография)");
        ДД = ПолучитьИзВременногоХранилища(ДанныеФайла.СсылкаНаДвоичныеДанныеФайла);
    Исключение
        Возврат Неопределено;
    КонецПопытки; 
    Если ТипЗнч(ДД) = Тип("ДвоичныеДанные") Тогда
        ФотоBase64 = Base64Строка(ДД);
    КонецЕсли; 
    Если НЕ ФотоBase64 = Неопределено Тогда
        ФотоBase64 = СтрЗаменить(ФотоBase64, Символы.ПС,"");    
        ФотоBase64 = СтрЗаменить(ФотоBase64, Символ(13),"");    
    КонецЕсли; 
    Возврат ФотоBase64;
КонецФункции
&НаКлиенте 
Процедура ВП_УстановитьФотоВСтрокуЗвонка(id, Абонент)
    СтрокиКэша = КэшФото.НайтиСтроки(Новый Структура("Объект",Абонент));
    ИскатьВБазе = (СтрокиКэша.Количество()=0);
    Если ИскатьВБазе Тогда
        ФотоBase64 = ПолучитьФотоBase64НаСервере(Абонент);
        // добавим фото в кэш
        СтрокаКэша = КэшФото.Добавить();
        СтрокаКэша.Объект = Абонент;
        СтрокаКэша.Фото = ФотоBase64;
    Иначе   
        ФотоBase64 = СтрокиКэша[0].Фото;
    КонецЕсли; 
    Если ФотоBase64 = Неопределено Тогда
        Возврат;
    КонецЕсли; 
    СтрокаКода = "var tpm_src='"+ФотоBase64+"';";   
    СтрокаКода = СтрокаКода + "set_line_img('"+id+"', tpm_src);";
    ВП_ВыполнитьСкрипт(СтрокаКода);
КонецПроцедуры
&НаКлиенте 
Процедура ОчиститьКэшФото()
    КэшФото.Очистить(); 
КонецПроцедуры
Далее мне понадобилось подправить файл стилей баннера, для того чтобы он начал отображаться в нужных пропорциях.
Файл стилей находится по адресу C:\Program Files (x86)\MIKO LLC\MIKOWWWBanner\css\style_miko.css
    .profile_miko {
        display: block;
        font-size: 16px;
        line-height: 16px;
        color: #b3b3b3;
        min-height: 150px;
        width: 480px;
        float: right;
    }
    .profile_miko .user-icon {
        border-radius: 35%;
        max-width: 28%;
        float: left;
    }
    .profile_miko .textarea {
        max-width: 70%;
        min-width: 70%;
        min-height: 100px;
        float:right;
    }
    .profile_miko .name {
        display: block;
        font-size: 16px;
        line-height: 22px;
        margin-bottom: 4px;
    }
    .profile_miko .buttons {
        position: absolute;
        bottom: 10px;
        right: 10px;
    }
За вывод баннера отвечает java скрипт расположенный по адресу: C:\Program Files (x86)\MIKO LLC\MIKOWWWBanner\js\libs\miko\active_lines.js
Весь код приводить не буду, обозначу только ту часть, которая касается внешнего вида баннера.
    ....
    var template_row_line = ''+
                '   <a href="#" title="Hide message" class="close">✕</a>'+
                '   <img id="img_line_'+_id+'" src="PNG/operator.png" alt="User name"  class="user-icon">'+
                '   <div class="textarea align-center"><span class="green">'+_city+'</span>'+   
                '   <span class="blue thin name">'+_name_contact+'</span>'+
                '   <span class="blue  name">'+_name+'</span>'+ 
                '   <span class="black ">т.  '+_number+'</span>'+   
                '   <div class="buttons"><a href="#&action=answer&id='+_id+'" class="button big green-gradient icon-phone" id="btn_answer_'+_id+'"> Ответить</a>'+  
                '   <a href="#&action=hold&id='+_id+'" class="button big orange-gradient icon-pause" id="btn_hold_'+_id+'"> Удержать</a>'+  
                '   <a href="#&action=hangup&id='+_id+'" class="button big red-gradient icon-cross" id="btn_hangup_'+_id+'"> Завершить</a></div></div>';
function set_line_img(_id, src){  
    if(src==undefined) return;
    var tmp_src=src;
    $("#img_line_"+_id).show();
    el = $("#img_line_"+_id);
    if(el.length>0) el.attr('src',tmp_src);
}
Здесь мы переименовали кнопку "Отбить" в "Завершить" и немного поигрались со стилями текстовых полей.
Функция setlineimg позволяет прямо из 1С заменить фотографию в банере. Передается порядковый ID банера и фото в формате Base64. На текущий момент поддерживаются только PNG картинки.
В итоге получилась такая красота.

p.s. этот баннер мы включим в один из очередных наших релизов.