University of Nairobi - AVCRIE
https://germanstudies.uonbi.ac.ke/tags/avcrie
enResearch Week 2021
https://germanstudies.uonbi.ac.ke/news/research-week-2021
<div class="field field-name-field-news-date field-type-datetime field-label-hidden"><div class="field-items"><div class="field-item even"><span class="date-display-single" property="dc:date" datatype="xsd:dateTime" content="2021-09-10T00:00:00+03:00">Friday, September 10, 2021</span></div></div></div><div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><p>Scheduled for <strong>November 22-26, 2021</strong>.</p>
<p>This is the <strong>4th</strong> (<strong>fourth) Annual Research Week</strong> hosted by the University of Nairobi. The week features different conferences covering a diverse range of academic disciplines, one of which is bound to meet your interest and area of expertise. The conferences provide a forum to enable you to present your work, engage with your colleagues, and learn about the latest developments in your field. For students, especially PhD students, Research Week 2021 provides an ideal forum to present and receive positive critique on your work before you submit it for journal publication, or before your dissertation defense.</p>
<p>For more information on how to participate, visit the <a href="https://researchweek2021.uonbi.ac.ke"><strong>Research Week 2021 Website</strong></a>.</p>
<!-- Add this script tag without any modification to the target webpage --><script type="application/javascript">
<!--//--><![CDATA[// ><!--
var ciscoBubbleChat = (function () {
var smHost = 'socialminer.uonbi.ac.ke';
var widgetId = '1';
var msgMustAcceptCert = 'Certificate must be accepted to start the conversation.';
var msgAcceptCertButtonLabel = 'Accept Certificate';
var msgCloseButtonLabel = 'Close';
var msgWaitingCertAcceptance = 'Waiting for certificate acceptance.';
var msgConnectivityIssues = 'We are experiencing connectivity issues. Try later.';
var appId = 'cisco_bubble_chat';
var appMargin = 15;
var appUrl = 'https://' + smHost + '/ccp/ui/BubbleChat.html?host=' + smHost + '&wid=' + widgetId;
var connectivityCheckUrl = 'https://' + smHost + '/ccp/ui/ConnectivityCheck.html';
var messageEventListener;
var addNoCacheQueryParam;
return {
showChatWindow: function (injectedData) {
var logPrefix = 'CISCO_BUBBLE_CHAT: ';
if (document.getElementById(appId)) {
console.log(logPrefix + 'Not loading BubbleChat as it is already loaded');
return;
}
var validateInjectedData = function(formData) {
// browser compatible way to check whether it is an object with 10 fields and all the values are strings
var result = true;
if (formData && typeof formData === 'object' && formData.constructor === Object){
var counter = 0;
for (var key in formData) {
if (!(typeof formData[key] === 'string' || formData[key] instanceof String)) {
result = false;
break;
}
counter++;
if (counter > 10) {
result = false;
break;
}
}
} else {
result = false;
}
return result;
};
if (injectedData) {
if (validateInjectedData(injectedData.formData)) {
appUrl += '&injectedFormData=' + encodeURIComponent(JSON.stringify(injectedData.formData));
} else {
if (typeof injectedData.validationErrorCallback === 'function') {
injectedData.validationErrorCallback();
} else {
console.log(logPrefix + 'Could not invoke validationErrorCallback as it is not a function');
}
}
}
var iframe = document.createElement('iframe');
iframe.setAttribute('sandbox', 'allow-scripts allow-same-origin allow-forms allow-popups');
iframe.setAttribute('id', appId);
iframe.setAttribute('style', 'position: fixed; width: 312px; height: 410px; border: none; bottom: 0px; right: 0; z-index:999;');
document.body.appendChild(iframe);
var frameWindow = iframe.contentWindow ? iframe.contentWindow : iframe;
var frameDoc = frameWindow.document;
// Trigger a page load for iframe inline content loading to work in Firefox
frameDoc.open();
frameDoc.close();
frameDoc.body.innerHTML = '<div id="secure-connectivity-check-container" style="position: fixed; width: 300px; height: 395px; ' +
'bottom: 10px; right: 10px; font-family: Helvetica; font-size: 14px; color: #4F5051;' +
'box-shadow: 0 0 3px #000; background: #fff; display: flex; flex-direction: column; display: none;">' +
'<div style="height: 25%;">' +
'<div style="height: 25%; display: flex; align-items: flex-start; justify-content: center; text-align: center;">' +
'<div style="padding: 0 15% 0 15%;">' +
'<div id="secure-connectivity-check-msg">' +
'<a id="accept-cert-button" style="display:none; padding-top: 10px" href="#" onclick="acceptCertificate(); return void(0);">' +
msgAcceptCertButtonLabel +
'' +
'' +
'' +
'<div style="height: 25%; display: flex; align-items: flex-end; justify-content: center; text-align: center;">' +
'<div style="padding: 0 15% 0 15%;">' +
'<a href="#" onclick="window.parent.postMessage({messageType: \'unmount\'}, \'*\'); return void(0);">' +
msgCloseButtonLabel +
'' +
'' +
'' +
'<div style="height: 25%;">' +
'';
frameWindow.acceptCertificate = function () {
frameDoc.getElementById('secure-connectivity-check-msg').innerHTML = msgWaitingCertAcceptance;
frameDoc.getElementById('accept-cert-button').style.display = 'none';
window.open(addNoCacheQueryParam(connectivityCheckUrl), 'SM_CERT_PAGE');
};
if (!addNoCacheQueryParam){
addNoCacheQueryParam = function (url) {
return url + (url.indexOf("?") === -1 ? '?' : '&') + 'nocache=' + new Date().getTime();
}
}
if (!messageEventListener) {
messageEventListener = function (event) {
console.log(logPrefix + 'Received event from origin: ' + event.origin);
console.log(logPrefix + 'Received event data: ' + JSON.stringify(event.data));
switch (event.data.messageType) {
case 'resize':
document.getElementById(appId).style.height = event.data.height + appMargin + 'px';
console.log(logPrefix + 'Successfully resized');
break;
case 'unmount':
document.body.removeChild(document.getElementById(appId));
window.removeEventListener('message', messageEventListener);
console.log(logPrefix + 'Successfully unmounted BubbleChat and removed event listener for message');
break;
case 'bubblechat-cert-accepted':
document.getElementById(appId).setAttribute('src', addNoCacheQueryParam(appUrl));
console.log(logPrefix + 'Successfully validated certificate acceptance and loaded BubbleChat');
break;
default:
console.log(logPrefix + 'Unknown message type');
}
};
}
window.addEventListener('message', messageEventListener);
console.log(logPrefix + 'Event listener for message added');
// Check HTTPS connectivity and show appropriate screen
var showConnectivityIssue = function (message, showAcceptCertLink) {
window.postMessage({ messageType: 'resize', height: 395 }, '*');
frameDoc.getElementById('secure-connectivity-check-container').style.display = 'block';
frameDoc.getElementById('secure-connectivity-check-msg').innerHTML = message;
frameDoc.getElementById('accept-cert-button').style.display = showAcceptCertLink ? 'block' : 'none';
};
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (this.readyState === 4) {
console.log(logPrefix + 'Connectivity check status: ' + this.status);
switch (this.status) {
case 200:
iframe.setAttribute('src', addNoCacheQueryParam(appUrl));
break;
case 0:
showConnectivityIssue(msgMustAcceptCert, true);
break;
default:
showConnectivityIssue(msgConnectivityIssues, false);
}
}
};
console.log(logPrefix + 'Checking connectivity to: ' + connectivityCheckUrl);
xhr.open('GET', addNoCacheQueryParam(connectivityCheckUrl), true);
xhr.send();
}
};
})();
//--><!]]>
</script><!--
Use the function 'ciscoBubbleChat.showChatWindow() as the event handler for initiating chat.
eg: <button onclick="ciscoBubbleChat.showChatWindow()"><p>Start Chat</button></p>
<p> Optionally, invisible form data can be submitted, which will be submitted along with the fields customer fills in.<br />
Upto 10 fields can be passed. If more than 10 fields are passed, the invisible form data will not be used and<br />
the provided error callback will be invoked. For injecting form data, an object should be passed to<br />
ciscoBubbleChat.showChatWindow() as an argument. The object should be of the form:<br />
{<br />
formData: {<br />
InjectedField1: 'InjectedValue1',<br />
InjectedField2: 'InjectedValue2'<br />
...<br />
},<br />
validationErrorCallback: function(){console.log('business specific logic goes here');}<br />
}<br />
The form data can have any string as field name and value. The submitted invisible form data values will be<br />
shown in the agent desktop, as well as will be updated in ContextService if the specified fieldset(s) in the widget<br />
contains these field names just like the regular visible chat form fields data.<br />
eg:<br />
<button onclick="ciscoBubbleChat.showChatWindow({<br />
formData: {<br />
AnyFieldName1: 'AnyFieldValue1',<br />
AnyFieldName2: 'AnyFieldValue2',<br />
AnyFieldName3: 'AnyFieldValue3',<br />
AnyFieldName4: 'AnyFieldValue4',<br />
AnyFieldName5: 'AnyFieldValue5',<br />
AnyFieldName6: 'AnyFieldValue6',<br />
AnyFieldName7: 'AnyFieldValue7',<br />
AnyFieldName8: 'AnyFieldValue8',<br />
AnyFieldName9: 'AnyFieldValue9',<br />
AnyFieldName10: 'AnyFieldValue10'<br />
},<br />
validationErrorCallback: function(){console.log('error in validating injected data');}<br />
})">Click to chat</button><br />
-->
<p><button onclick="ciscoBubbleChat.showChatWindow()">Start Chat</button></p>
</div></div></div><a href="/tags/research-week-2021" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Research Week 2021</a>, <a href="/tags/university-nairobi" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">University of Nairobi</a>, <a href="/tags/avcrie" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">AVCRIE</a>, <a href="/tags/research" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Research</a><ul class="links inline"><li class="addtoany first last"><span><span class="a2a_kit a2a_kit_size_32 a2a_target addtoany_list" id="da2a_1">
<a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fgermanstudies.uonbi.ac.ke%2Fnews%2Fresearch-week-2021&title=Research%20Week%202021"><img src="/sites/all/modules/addtoany/images/share_save_171_16.png" width="171" height="16" alt="Share"/></a>
</span>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
if(window.da2a)da2a.script_load();
//--><!]]>
</script></span></li>
</ul>Fri, 10 Sep 2021 12:40:27 +0000admin773017 at https://germanstudies.uonbi.ac.kehttps://germanstudies.uonbi.ac.ke/news/research-week-2021#comments