1.1. Gerekli ortamlar
CEYD diliyle kod yazmak için internet üzerinden giriş yapabileceğiniz herhangi bir ortam yeterlidir. Yazılacak tüm komutlar web üzerindeki ÜCRETSİZ olan kendi hesabınızda tutulmakta ve buradan bağlı olan cihazınıza direktif olarak gitmektedir.
Komutları işleyip çalıştıran, sizi dinleyip komutlarınıza cevap veren asistan sistemi ise Android işletim gerektirmektedir. Ancak https://ceyda.docs.apiary.io/ sayfasında belirtildiği gibi CEYD-A altyapısının web servislerini kendi platform bağımsız sisteminizde kullanabilirsiniz
Kurulum için gerekli minimum Android sistem versionu 4.0 olmalıdır. Ancak uygulamanın sorunsuzca çalışması ve birçok özelliği desteklemesi için tavsiye edilen minimum sürüm 5.0 dır.
1.2. Komut Girişi ve Asistan Kurulumu
CEYD dili ile kod yazmak için http://ceyd-a.net/komutekle sayfasını herhangi bir ortamdan kullanabilirsiniz. Yazılacak olan kodlar giriş yaptığınız hesaba ait olacak ve bu hesaba bağlı olan Android tabanlı cep telefonu, tablet , TV ve navigasyon cihazı gibi sistemlerde CEYD-A uygulamasını açtığınız anda devreye girecektir.
Ayrıca CEYD-A web servislerini kendi sistemlerinizde kullanıyorsanız, komutların devreye girmesi için servise komutlarımı yükle yazıp göndermeniz yeterli olacaktır.
Eklediğiniz komutun direk ismini veya içinde bu komut ismi geçen cümleler kullanıp sesli söyleyerek bu komutun cevabını CEYD-A ya söyletebilirsiniz. Eğer cevaplarda CEYD dili ile yazılmış kodlar var ise bu kodlar yorumlanıp dinamik ve çeşitliliği olan, araştırma sonucu dönen cevaplar olarak karşımıza çıkacaktır.
CEYD-A uygulamasını ise Google Play Market üzerinden indirebilirsiniz. Ücretsiz versiyonu da Tam versiyonu da CEYD dilini desteklemekte ve yorumlamaktadır. Tam sürüm reklamsız sürüm olmakta olup birçok ek özelliğe sahiptir .
Özellikler https://web.ceyd-a.com/c/faqs/tam-surum-ile-ucretsiz-surum-farklari-nelerdir/ sayfasında belirtilmektedir.
2.1. Hızlı Başlangıç
Öncelikle, CEYD-A Türkçe sesli bir asistandır ve çalışması, kullanılması için onu eğitmenize GEREK YOKTUR. ANCAK EĞİTİLEBİLEN VE ÖĞRENEBİLEN bir asistandır. Bildiği binlerce komut ve yüzbinlerce kelime dağarcığı vardır.
Siz ona sesli veya yazılı olarak istemde bulunursunuz . CEYD-A uygulaması da sizin bu isteminize sesli ve yazılı olarak cevap verir.
İlk başlayanlar için bazı yararlı sayfalar:
3.1. Merhaba Dünya
Aşağıdaki örneği komut cevap alanına yazdığınızda size rastgele olarak Merhaba,Günaydın,İyi günler veya Selam diyecektir.
Merhaba |Günaydın |İyi Günler |Selam
Aşağıdaki örneği denediğinizde $SAHİBİNADI değişkenine Cenker ismini atayacaktır.
{! RET benim adım Cenker !}
Bu örneği biraz daha geliştirelim. Merhaba veya günaydın diyerek sizin isminizi söyleyecektir:
Merhaba $SAH İBİNADI |Günaydın $SAH İBİNADI
3.2. Diyalog Örneği
Diyalog CEYD-A nın size sözlü cevap vermesidir. Ne demesini istiyorsanız düz cümle ile veya CEYD ifadeleri kullanarak cevap yazabilirsiniz.
Örnek 1: (Düz cümle ve genel değişken kullanımı)
Ben de iyiyim . Sağolasın |Seni görmek ne güzel $SAH İBİNADI |Süper
Örnek 2: (CEYD ifadesi ile)
Saati mi merak ettin ? Saat {! RET saat !} şu anda
3.3. İşlem Örneği
İşlem, CEYD-A ya başka bir komutu yaptırma işlemidir. Yani, CEYD-A nın bildiği bir komutu aynen yapmasıdır. İşlem alanına yazılır ve Diyalog alanı boş olmalıdır.
Örnek 1
Örnek 2
Örnek 3
Örnek 4
3.4. İlişkili Komut Örneği
4. Söz Dizimi ve Deyimler (Syntax and Expressions)
4.1. Söz Dizimi (Syntax)
CEYD dili ifade ve komutları {! ve !} içinde yorumlanırlar. Herbir ifade muhakkak {! ile başlamalı ve !} ile bitmelidir. Bu işaretler dışındaki alanlar düz metin olarak algılanır. İfadeler RET, GET, SET, IF, FOR, FOREACH ve EVAL dir. Ayrıca bir ifade içinde başka bir ifade de bulunabilir.
Örnek söz dizimleri:
{! SET $degisken =10 !} {! RET {! GET $degisken !} dolar kaç lira eder !}
{! RET hava derece !} derece sıcaklık var dışarıda
Bakınız:
CEYD Dili Nasıl İşler ?
4.2. Değişken ve Diziler
CEYD dilinde değişken ve diziler Android üzerinde çalışan CEYD-A için geçerli olmak üzere cihaz üzerine kurulu olan uygulama üzerinde saklanır.
Tek Değer Alan Değişkenler
Değişkenler $ işareti ile başlayan alfanumerik karakterler ile ifade edilirler. Örneğin $aciklama, $icerik1 gibi
Değişkenlere değer atamak için SET, değeri öğrenmek için GET ifadesi kullanılır.
Örnek 1:
Java dilinde karşılığı
int a =1 ;
System .out .print (a );
Örnek 2:
Java dilinde karşılığı
Örnek 3:
{! SET $a ={! EVAL {! GET $b !} +3 !} !}
Java dilinde karşılığı
Çoklu Değer Alan Değişkenler
Değişkenlere sadece tek değer değil, sanki bir diziymiş gibi birden fazla değer de atanabilir.
addtovariable array,value Tek boyutlu diziye değer ataması yapar.
SABLON : {HER }({KELİME1 }){İ EKİ } severim {HERSON }
CEVAP : {! RET addtovariable staLikeList ,{KELİME1 }!} Tamam {KELİME1 } sevdiğini öğrendim . Yorumlarımda dikkat edeceğim
listvariable array Dizi değişkenlerini virgül ile ayrıştırılmış sonuç olarak döner.
SORU : severim ,5
SABLON : {HER }({KELİME1 }){İ EKİ } severim {HERSON }
CEVAP :{! RET addtovariable staLikeList ,{KELİME1 }!} Tamam {KELİME1 } sevdiğini öğrendim .
SORU :seviyorum ,5 |
SABLON :{HERSON }(neleri seviyorum ){HERSON }
CEVAP :{! RET listvariable staLikeList !}
Değişken değerleri içinde gezinip yineleme (iterate) yapmak için:
SORU :foreach deneme1
CEVAP :Sevdiklerin şunlar :< br >
{! FOREACH $staLikeList as $value
{! GET $value !} < br >
!}
resetvariable array Tüm dizi değişkenlerini siler
SORU :sevdiklerimi sil% ,5
CEVAP : {! RET resetvariable staLikeList !} Tamam . sevdiklerini tuttuğum listeyi sildim .
Diziler
Dizileri anahtar-key (burada relation olarak adlandırıyoruz) ve value-değerini içeren değişkenler topluluğu olarak tanımlayabiliriz.
addtoarray array,relation,value 2 boyutlu dizilere atama yapar. array[relation]=value olarak işlem görür
SABLON : (anne |baba |kardeşi |kızı |oğlu |eşi |teyze |amca |dayı |hala )(min |mın |mun |mün ){HERSON }(ismi |adı ) ({HERSON })
CEVAP : {! RET addtoarray sahip ,$1 ,$4 !} Tamam anladım . $1 $2 $3 nedir gibi sorular sorabilirsin
Ayrıca, addtoarray kullanmadan aşağıdaki yapı örneğini kullanabilirsiniz.
{! SET $staMyFavorites [yazar ]=Stephen King !}
listarray array
SORU : kampanya gir ,10 |
CEVAP : {! SET title ={! RET inputbox Kampanya ismi ?!} !}
{! IF $title !=tamam ??
{! SET desc ={! RET inputbox Tanımı ?!} !}
{! RET addtoarray $title ,kampanyalar ,$desc !}
{! RET kampanya gir !} ::Tamam . Kampanyaları girdim .!}
SORU :kampanyaları söyle ,20 |
CEVAP :{! RET listarray kampanyalar !}
resetarray array
SORU : kampanyaları sil ,20 |
CEVAP : {! RET resetarray kampanyalar !}
Mevcut kampanyaları sildim
cmddeletekey key,array
array dizisi içindeki key ile gösterilen satırı siler
searcharray variable,array,value
2 boyutlu dizi içinde value değerini SQL sözdizimindeki LIKE gibi eşleme yaparak aratır ve bulunan value değerlerinin tam halini döner.
SORU : kampanyasını söyle ,20 |
SABLON : ({HER1 }) kampanyasını söyle {HERSON }
CEVAP : {! RET searcharray {HER1 },kampanyalar ,%% !}
Diziler içinde yineleme yapmak için:
SORU : foreach deneme
CEVAP : Favorilerin şunlar :
{! FOREACH $staMyFavorites as $key => $value
ANAHTAR :{! GET $key !} < br >
DEĞER :{! GET $value !} < br >
!}
4.3. RET - Komut Çağırma Deyimi
RET herhangi bir komutu çağırır ve komutun dönen bir değeri var ise bu değeri yazar.
Örnekler
{! RET hava nem oranı !} nem var şu an
{! RET semt !} ilçesindesin şu anda değil mi ?
Piyasa bilgilerine göre dolar bugün {! RET dolar !} TL , euro ise {! RET euro !} TL dir .
4.4. IF - Koşul Deyimi
IF belirtilen bir koşulu kontrol eder, eğer o koşul karşılanıyorsa istenilen deyim veya komutları gerçekleştirir, karşılanmıyorsa farklı deyim veya komutları gerçekleştirir.
@@ ve && kullanarak kontrolü detaylandırılabilir. Bilindiği gibi C++ Java gibi dillerde || veya, && ve olarak işlev görmektedir. Aynı şekilde CEYD dilinde de bu işlevleri kullanabilmek mümkün.
CEYD dilinde || sembollerinin farklı bir anlamı olduğu için karışmaması adına veya @@ ile gösterilmektedir. Ancak && sembollerinin amacı CEYD dilinde de aynıdır.
Aşağıdaki örnekte saat değişkenine şu anki saat atanıyor. Eğer saat değişkeni 12 den büyük ve 17 den küçük ise CEYD-A Öğle vaktindesin , diğer durumlarda Öğle vakti değil diyecektir
{! SET $saat ={! RET saat !} !} {! IF $saat > 12 &&$saat <17??Öğle vaktindesin ::Öğle vakti değil !}
Başka bir örnek:
{! IF $sayfaicerik != ??{! SET sayfaicerik ={! RET loadurlencode http ://cenker .com !} Tamamdır sayfayı yükledim !} ::Sayfa zaten yüklenmiş .!}
4.5. Komutsuz Düz Yazı Kullanımı
CEYD dili algoritmik komut ve ifadeleri kullanabildiği gibi, kod yazımına uzak olan kullanıcıları da düşünen bir yapıdadır.
Verilecek cevaplar düz cümle şeklinde de olabilir:
SORU : Nasılsın
CEVAP : İyiyim
Bu komutu biraz daha düz cevap yapısıyla geliştirirsek
SORU : Nasılsın
CEVAP : İyiyim |Sağolasın
gibi 2 seçenekli, rastgele değişen cevap verdirmek te mümkün. Bu şekilde ya iyiyim diyecektir ya da sağolasın.
CEVAP :İyiyim |Sağolasın |Elin dert görmesin |Sen nasılsın ?
gibi seçenekleri arttırmak mümkün.
Bunun dışında daha da gelişmiş bir şekilde rastgele kalıplarda sağlanabilir.
CEVAP : (!!Merhaba |Selam |Saygılarımla , nasılsın ?|İyi günler |Sana da merhaba |Selamlar sana da |Özletmiştin kendini , selam |!!)(!!nasıl yardımcı olabilirim |yardımcı olmaya çalışacağım |umarım yardım edebilirim !!)|
(!! ve !!) ile ayrılan kalıp kendi içinde rastgele gösterilir ve sonrasında ikinci (!! ve !!) ile ayrılan bölüm içindekiler rastgele gösterilir. Bu şekilde seçenekler artar.
Örnek cevaplar:
Merhaba nasıl yardımcı olabilirim
Özletmiştin kendini nasıl yardımcı olabilirim
Saygılarımla, nasılsın ?umarım yardım edebilirim
4.6. Seçiciler (Selectors)
decodefetchtagsrc ve benzer komutlarda kullanılabilecek bazı seçiciler şunlar. Seçiciler ile web sayfası içinde sadece istenilen bir bölümü almak ve gösterip söyletmek mümkün.
E F E elemanının altındaki F elemanı div a, .logo h2
E > F E elemanının hemen altındaki F elemanı ul > li
E + F E elemanının aynı seviyedeki hemen takipçisi li + li, div.head + div
E ~ F E elemanının aynı seviyedeki takipçileri h1 ~ p
E, F, G E F G elemanlarının hepsi a[href], div, h3
Örnekler:
icerik içinde div id si div1 olan alanı seçer:
{! RET decodefetchtagsrc {! GET icerik !} ,div [id =div1 ],ISO-8859-9 !}
sayfa kodu içinde parametre geçen tr leri seçer:
{! RET decodefetchtagsrc {! GET sayfa !} ,tr :contains ($1 )!} |
veya
tr:has(td:contains($1))
kullanılabilir
parametre geçen ilk a taginin href alanını seçer:
{! RET decodetagvalue {! GET icerik !} ,a :contains ($1 ),href !}
h3 ten sonra gelen aynı seviyedeki ul leri seçer
{! RET decodefetchtagsrc {! GET sayfa !} ,h3 ~ ul !}
class ismi entry olan div in içindeki p yi seçer
{! RET decodefetchtagsrc {! GET sayfa !} ,div [class =entry ]> p !}
Sayfa içeriği kodu şu şekilde varsayarsak:
<p class=”basla_icerik”><a href=”http://ornek.com/sayfa.html”>Link İsmi</a></p>
İlk p içeriği kod içindeki basla_icerik class isimli p nin içindeki a nın text alanını seçer
{! RET decodefetchtagsrc $kod ,p [class =basla_icerik ]> a !}
kod içindeki basla_icerik class isimli p nin içindeki ilk a nın hrefini seçer
{! RET decodetagvalue $kod ,p [class =basla_icerik ]> a :nth-child (1 ),href !}
kod2 içindeki basla_icerik class isimli p den hemen sonra gelen ilk p yi gösterir
{! RET decodefetchtagsrc $kod2 ,p [class =basla_icerik ]+p !}
5. Komutlar (Commands)
Mevcut CEYD Komutları aşağıdaki gibidir. Bu komutlar CEYD-A komutları gibi yeni komutlar geliştirmek için kullanılabilir durumdadır. Diğer komutlardan farkı sistemsel olmaları ve atom niteliğinde olmaları ve başka bir komuttan türememeleridir.
Kısaca CEYD-A nın en önemli yapıtaşı komutlarıdır. Bunların dışındaki tüm komutlar hem aşağıdaki komutlardan oluşabilir,geliştirilebilir hem de tekrarlayan bir şekilde diğer komutlardan türeyebilir.
GETJSONVALUE
LOADURL
GETSEARCHIMAG
LOADURLENCODE
INPUTBOX
INDEXOF
STRINDEXOF
DECODELINESCONTAINING
SHOWTABLETDS
LINESCONTAINING
RANDOM
GETCITY
GETPROVINCE
SRVCACHE
DECODE
ENCODE
FETCHTAG
CONVERTTOLATIN
STRREPLACE
STRLENGTH
CONVERTDATE
RCONVERTDATE
FETCHNUMERIC
FETCHNUMBERS
FETCHALPHAS
SUBSTRING
VERS
APPVERS
CONTAINS
DEVICENAME
DECODEFETCHTAG
DECODEFETCHTAGHTML
DECODEFETCHTAGSRC
FETCHTAGSRC
DECODETAGVALUE
INSIDEDELIMETERS
DECODEFETCHTAGLINES
DECODESPLITANDFETCH
5.1. Dizgi İşleme Komutları (String Manipulation Commands)
5.1.1. LOADURLENCODE
Internet sayfasının HTML içeriğini okur ve döner
Komut
LOADURLENCODE (sitesayfaismi ,encodingtipi )
Parametreler
İsim
Tip
Açıklama
Zorunlu
Varsayılan
sitesayfaismi
metin
Bir encode komutu ile oluşturulmuş HTML sayfa kodu
Evet
encodingtipi
metin
ISO-8859-9,ISO-8859-1, UTF-8 veya diğer tipler
Hayır
UTF-8
Örnekler
Aşağıdaki örnek istenilen bir sitedeki sayfanın <p> taglerini bulur ve içlerini ekranda gösterir ve sesli söyler
{! SET $kod ={! RET loadurlencode http ://orneksite .com/sayfa !} !} {! RET decodefetchtagsrc $kod ,p !}
5.1.3. ENCODE
Yazıyı URL okunur hale döndürür. Tüm decode ile başlayan komutlardaki yazılar önce encode veya encode işlevi yapan komutla işlenmelidir.
Komut
ENCODE yazi
Parametreler
İsim
Tip
Açıklama
Zorunlu
Varsayılan
yazi
metin
HTML sayfa kodu veya düz yazi
Evet
Örnekler
Aşağıdaki örnek URL sayfa linkine gönderilecek olan parametreleri kodlar. Örneğin sayfa linkinde kullanılacak parametre Kara Murat ise Kara%20Murat olarak işlem görür
{! SET $kod ={! RET loadurlencode http ://orneksite .com/sayfa ?parametre ={! RET encode $1 !} !} !} {! RET decodefetchtagsrc $kod ,p !}
5.1.4. INSIDEDELIMETERS
Düz metin içinde geçen ayraçlar içindeki alt metni döner
Komut
INSIDEDELIMETERS duzmetin,ayrac1,ayrac2
Parametreler
İsim
Tip
Açıklama
Zorunlu
Varsayılan
duzmetin
metin
düzmetin
Evet
ayrac1
metin
döndürülecek metnin başlangıç harf dizimi
Evet
ayrac2
metin
döndürülecek metnin son harf dizimi
Evet
Örnekler
Aşağıdaki örnek, içinde kartal geçen a tagini bulur ve ? ve & içindeki alanı döndürür.
<a href=denemekartal.png?par1=1&par2=2>
{! RET insidedelimeters {! RET decodefetchtagsrc {! GET icerik !} ,a [href ]:contains (kartal ),ISO-8859-9 !} ,?,&!}
5.1.5. LINESCONTAINING
Satırları olan düz metin içinde kelime geçen satırı döner
Komut
LINESCONTAINING duzmetin,aranacakkelime
Parametreler
İsim
Tip
Açıklama
Zorunlu
Varsayılan
duzmetin
metin
Text
Evet
arananacakkelime
metin
Text içinde aranacak kelime
Evet
Örnekler
Aşağıdaki örnek önce düz sayfa metnini encode işleminden geçirir. $1 parametresini arar ve satırı decode yapıp döner.
{! SET $d1 ={! RET loadurlencode http ://ornek .com/duzmetin .txt !} !} {! SET $d2 ={! RET linescontaining $d1 ,$1 !} !} {! RET decode $d2 !}
Aşağıdaki örnek önce düz sayfa metnini okur. $1 parametresini arar ve satırı döner.
{! SET $d1 ={! RET loadurl http ://ornek .com/duzmetin .txt !} !} {! SET $d2 ={! RET linescontaining $d1 ,$1 !} !} {! GET $d2 !}
5.2. Çok İşlevli Kullanıcı Komutları
CEYD dilinin modüler yaklaşımından dolayı kullanıcıların eklediği parametrik komutlar da yeni komutların oluşumunda kullanılabilir. Aşağıda bu tür kullanıcı komutlarının bazılarını ve kullanım örneklerini bulabilirsiniz. Yeni komutlar oluşturmanızda size fayda sağlayacaktır.
cmdgetantonym
SORU :%dı ,1 .1 |%di ,1 .1 |%dü ,1 .1 |%du ,1 .1 |
SABLON :{EDAT }({HER1 })({KELİME1 })((dı \\bdı {HERSON })|(di \\b |di {HERSON })|(dü \\b |dü {HERSON })|(du \\b |du {HERSON }))
CEVAP :{! IF {KELİME1 } has a ,ı ,o ,u ??{! SET mastar =mak !} ::{! SET mastar =mek !} !}
{! SET fiil ={KELİME1 }{! GET mastar !} !}
{! SET isverb ={! RET isverb {! GET fiil !} !} !}
{! IF $isverb ==1 ??
{! GET fiil !} eylemi yapıldı diyorsun {! RET galiba sözleri !}
<small> {! RET {! GET fiil !} sözlük anlamı !} </small>
::
{! SET sifat ={KELİME1 }!} Geçmiş zamanda {KELİME1 } idi , şimdi değişti {! RET cmdgetantonym {KELİME1 }!} olarak algıladım
<small> {! RET {KELİME1 } sözlük anlamı !} </small>
!}
cmdmatchfixtures
SORU :eurolig ,7 |euroleague ,7 |eurolig maç% ,10 |maç% ,0 .9 |basket% ,0 .9 |avrupa% ,0 .9 |
SABLON :{HERSON }(fikstür |maçlar |maç tablosu ){HERSON }
CEVAP :{! RET cmdmatchfixtures basketball ,15 !}
<small> <mute> Kaynak :http ://tr .scoresway .com </mute> </small>
ÖRNEK KULLANIM : eurolig maçları ne zaman
eurolig maç tablosu
cmdmatchrankings
SORU :euro basket ,7 |basket% ,10 |avrupa% ,0 .9 |puan durum% ,7 |sıralama% ,0 .9 |tablo% ,0 .9 |
SABLON :{HERSON }{HERSON }euro {HERSON }basket {HERSON }(sıralama |puan ){HERSON }
CEVAP :{! RET cmdmatchrankings basketball ,31 !}
ÖRNEK KULLANIM : euro basket puan durumu
cmdgetpricelist
SORU :en ucuz ,40 |
SABLON :{EDAT }({HER1 }) en ucuz ne {HERSON }
CEVAP :{! RET cmdgetpricelist {HER1 }!}
cmdfulltvguidebycategory
SORU :film% ,10 |bugün ,0 .9 |bu akşam ,0 .9 |
SABLON :{HERSON }(bugün |bu akşam ){HERSON }hangi {HERSON }film {HERSON }
CEVAP :{! RET cmdfulltvguidebycategory 4/film !}
ÖRNEK KULLANIM : bugün hangi filmler var
SORU :dizi% ,25 |bugün ,0 .9 |bu akşam ,0 .9 |
SABLON :{HERSON }(bugün |bu akşam ){HERSON }hangi {HERSON }dizi {HERSON }
CEVAP :{! RET cmdfulltvguidebycategory 5/dizi !}
ÖRNEK KULLANIM : bugün hangi diziler var
cmdtvguidebycategory
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SORU :film% ,10 |şimdi ,0 .9 |şu an ,0 .9 |
SABLON :{HERSON }(bugün |şu an |şimdi ){HERSON }hangi {HERSON }film {HERSON }
CEVAP :{! RET cmdtvguidebycategory FİLM !}
ÖRNEK KULLANIM : şimdi hangi filmler var
SORU :haber% ,10 |
SABLON :{HERSON }(bugün |şu an |şimdi ){HERSON }hangi {HERSON }haber {HERSON }
CEVAP :{! RET cmdtvguidebycategory HABER !}
ÖRNEK KULLANIM : bugün hangi haber programları var
SORU :dizi% ,25 |şimdi ,0 .9 |şu an ,0 .9 |
SABLON :{HERSON }(bugün |şu an |şimdi ){HERSON }hangi {HERSON }dizi {HERSON }
CEVAP :{! RET cmdtvguidebycategory DİZİ !}
ÖRNEK KULLANIM : şimdi hangi diziler var
SORU :spor% ,25 |
SABLON :{HERSON }(bugün |şu an |şimdi ){HERSON }hangi {HERSON }spor {HERSON }
CEVAP :{! RET cmdtvguidebycategory SPOR !}
ÖRNEK KULLANIM : bugün hangi spor programları var
cmdnutritionrelated
SORU :yemekler ,20 |
SABLON :{EDAT }({HER1 })(ile |la |le |) yapı {HERSON } yemekler {HERSON }
CEVAP :{! RET cmdnutritionrelated {HER1 }!}
ÖRNEK KULLANIM : (YİYECEK İSMİ ) ile yapılan yemekler
cmdnutritionfacts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SORU :karbonhidrat ,20 |
SABLON :({HER1 }){NİN EKİ } karbonhidrat {HERSON }
CEVAP :{! RET cmdnutritionfacts {HER1 },karbonhidrat !}
ÖRNEK KULLANIM 🙁YİYECEK İSMİ ) karbonhidrat oranı
SORU :yağ ,20 |
SABLON :({HER1 }){NİN EKİ } yağ (miktarı |oranı |değeri ){HERSON }
CEVAP :{! RET cmdnutritionfacts {HER1 },yağ !}
ÖRNEK KULLANIM : (YİYECEK İSMİ )nin yağ değeri
SORU :protein ,20 |
SABLON :({HER1 }){NİN EKİ } protein (miktarı |oranı |değeri ){HERSON }
CEVAP :{! RET cmdnutritionfacts {HER1 },protein !}
ÖRNEK KULLANIM : (YİYECEK İSMİ ) protein oranı
SORU :kolesterol% ,20 |
SABLON :({HER1 }){NİN EKİ } kolesterol (miktarı |oranı |değeri ){HERSON }
CEVAP :{! RET cmdnutritionfacts {HER1 },kolesterol !}
ÖRNEK KULLANIM : (YİYECEK İSMİ ) kolesterol oranı
cmdtvguide
SORU :yayın akışı ,5 .1 |
SABLON :({HER1 }) yayın {HERSON }
CEVAP :{! RET cmdtvguide {HER1 }!}
ÖRNEK KULLANIM : (TV KANALI ) yayın akışı
cmdteamplayers
SORU :basket% ,20 |takım% ,20 |kadro ,1 |oyuncu% ,1 |
SABLON :{HERSON }beşiktaş {HERSON }basket {HERSON }(takım |kadrosu |oyuncu ){HERSON }
CEVAP :{! RET cmdteamplayers basketball ,111 !}
ÖRNEK KULLANIM :beşiktaş basketbol takımı kadrosu
SORU :basket% ,20 |takım% ,20 |kadro ,1 |oyuncu% ,1 |
SABLON :{HERSON }fener {HERSON }basket {HERSON }(takım |kadrosu |oyuncu ){HERSON }
CEVAP :{! RET cmdteamplayers basketball ,109 !}
ÖRNEK KULLANIM : fenerbahçe basketbol takımı kadrosu
cmdgettuik
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SORU :enflasyon% ,20 |tüfe% ,20 |
SABLON :{HERSON }(enflasyon |tüfe )( oranı {HERSON }| kaç {HERSON }| ne {HERSON }|)
CEVAP :{! RET cmdgettuik .*aynı ayına göre değişim .*!}
ÖRNEK KULLANIM :enflasyon kaç
SORU :işsizlik% ,20 |
SABLON :{HERSON }işsizlik ( oranı {HERSON }| kaç {HERSON }| nedir {HERSON }|)
CEVAP :{! RET cmdgettuik .*sizlik oranı .*!}
ÖRNEK KULLANIM : işsizlik oranı kaç
SORU :büyüme hızı% ,20 |gsyh ,20 |gayri safi ,0 .9 |
SABLON :{HERSON }(türkiye |ülkemiz ){HERSON }büyüme ( hızı {HERSON }| kaç {HERSON }| nedir {HERSON }|)
CEVAP :{! RET cmdgettuik .*GSYH .*!}
ÖRNEK KULLANIM : Türkiye nin büyüme hızı kaç
SORU :sanayi% ,20 |
SABLON :{HERSON }sanayi (büyüme |üretim )( hızı {HERSON }| endeksi {HERSON }| kaç {HERSON }| nedir {HERSON })
CEVAP :{! RET cmdgettuik .*Sanayi Üretim .*!}
ÖRNEK KULLANIM : Sanayi üretim endeksi kaç
cmdanalyseword
SORU : misin ,4 |mısın ,4 |müsün ,4 |musun ,4
SABLON : ({HERSON } )?({KELİME1 }) (misin |mısın |müsün |musun ){HERSON }
CEVAP : {! SET $aw ={! RET cmdanalyseword {KELİME1 }!} !}
{! SET err2 ={! RET haserror $aw !} !}
{! IF $err2 ??::{! GET $aw !} !}
cmdleaguestats
SORU :topa sahip% ,20 |
CEVAP :Süper Lig isabetli topa sahip olma istatistikleri aşağıdaki gibidir :<br> {! RET cmdleaguestats topa sahip !}
ÖRNEK KULLANIM : topa sahip olma istatistikleri
SORU :isabetli şut% ,20 |
CEVAP :Süper Lig isabetli şut oranları aşağıdaki gibidir :<br> {! RET cmdleaguestats sabetli !}
ÖRNEK KULLANIM : isabetli şut oranları
SORU :gol kral% ,20 |
CEVAP :Süper Lig Gol Krallığı Listesi aşağıdaki gibidir :<br> {! RET cmdleaguestats gol !}
ÖRNEK KULLANIM : gol krallığı
cmdgettvrating
SORU :seyre% ,20 |izle% ,20 |
SABLON :{HERSON }(bu akşam |bugün ){HERSON }ne {HERSON }(seyre |izle ){HERSON }
CEVAP :{! IF $APPVERS > =6 .0 .4 .3 ??
Geçen hafta en çok seyredilenler bunlar ... Sen bugün için birini seç .<br>
{! SET $tarih ={! RET 7 gün önce cwhichdate !} !}
{! SET $gecenhafta ={! RET rconvertdate $tarih ,dd MMMM yyyy ,yyyy-MM-dd !} !}
{! RET cmdgettvrating {! GET $gecenhafta !} ,1 !}
{! SET $likelist ={! RET listvariable staLikeList !} !}
{! IF $likelist has dizi ??Ayrıca sen dizilerden hoşlanıyorsun . İşte şu an yayınlanan diziler {! RET şimdi hangi diziler var !} .::!}
{! IF $likelist has haber ??Ayrıca sen haber programlarından hoşlanıyorsun . İşte şu an yayınlanan haber programları {! RET bugün hangi haber programları var !} .::!}
{! IF $likelist has eğlence ??Ayrıca sen eğlence programlarından hoşlanıyorsun . İşte ilgini çekebilecek eğlence programları {! RET bugün hangi eğlence programları var !} .::!}
::Bu komutu yorumlayabilmem için lütfen CEYD-A yı güncelleyiniz . Tüm güncellemeler ücretsizdir .!}
cmdshowvideo
SORU :sevdiğin şarkı% ,20 |favori şarkın% ,20 |
CEVAP :Bu sıralar Katy Perry dinliyorum . Video klibi hoşuma gidiyor ..<br>
{! RET cmdshowvideo https ://www .youtube .com/embed/Um7pMggPnug !}
cmdshowcallbutton
SORU :telefon% ,20 |
SABLON :({HER1 }){NİN EKİ } (telefonu nedir |telefon numarası |telefonu kaç |telefonunu {HERSON }söyle ){HERSON }
CEVAP :{! IF $APPVERS <5.8.6??Bu komut CEYD-A 5 .8 .6 versiyonla devreye girecektir .::
{! SET $found ={! RET cmdgetcontact {HER1 }!} !}
{! IF $found != ??
{! GET $staPhoneName !} kişisinin telefon numarası {! GET $staPhoneNumber !}
::
{! SET temp ={! RET {HER1 } cwhere !} !}
{! IF $staLocationPhone == ??{! GET $staLocationName !} yerinin telefonunu bilmiyorum kusura bakma ::
{! GET $staLocationName !} yerinin telefonu {! GET $staLocationPhone !}
{! RET cmdshowcallbutton {! GET $staLocationPhone !} !}
!}
!}
!}
ÖRNEK KULLANIM : (YER İSMİ/REHBERDEKİ KİŞİ ) telefonu nedir
cmdshowmap
SORU :çalışıyorum ,20 |işyerim nerede ,40 |
SABLON :{HERSON }nerede {HERSON }
CEVAP :{! SET $isyeriloc ={! RET işyeri nerede !} !}
{! SET $curloc ={! RET koordinatlarım !} !}
<center>
Sanırım iş yerin burası :
{! RET cmdshowmap {! GET $curloc !} ,{! GET $isyeriloc !} !}
</center>
isverb
SORU :istiyorum ,3 .5 |
SABLON :{HER }({KELİME1 }) istiyorum {HERSON }
CEVAP :{! SET $kelimecinsi ={! RET getrelation {KELİME1 },all !} !}
{! SET $fiil ={! RET isverb $1 !} !}
{! IF $kelimecinsi ==yemek @@$kelimecinsi ==yiyecek ??{! RET en yakın restoran !} <center> Sanırım {KELİME1 } bulabileceğin bir yer buldum </center> <br> {! RET $1 resmi göster !} <br> <small> <mute> YOL TARİFİ derseniz tarif edebilirim </mute> </small>
::{! IF $kelimecinsi ==tatlı ??{! RET en yakın kafe !} <center> Sanırım {KELİME1 } bulabileceğin bir yer buldum </center> <br> {! RET {KELİME1 } resmi göster !} <br> <small> <mute> YOL TARİFİ derseniz tarif edebilirim </mute> </small>
::{! IF $kelimecinsi ==meyve @@$kelimecinsi ==sebze ??<center> Sanırım {KELİME1 } bulabileceğin bir market buldum </center> <br> {! RET {KELİME1 } resmi göster !} {! RET en yakın market !} <br> <small> <mute> YOL TARİFİ derseniz tarif edebilirim </mute> </small>
::{! IF $kelimecinsi ==alkollü ??<center> Sanırım {KELİME1 } içebileceğin bir yer buldum . Sarhoş olma sakın .</center> <br> {! RET {KELİME1 } resmi göster !} {! RET en yakın bar !} <br> <small> <mute> YOL TARİFİ derseniz tarif edebilirim </mute> </small>
::{! IF $kelimecinsi ==içecek ??<center> Sanırım {KELİME1 } içebileceğin bir yer buldum </center> <br> {! RET {KELİME1 } resmi göster !} {! RET en yakın kafe !} <br> <small> <mute> YOL TARİFİ derseniz tarif edebilirim </mute> </small>
::{! IF $kelimecinsi ==çiçek ??<center> Sanırım {KELİME1 } bulabileceğin bir yer buldum . Sevilmek ne güzel . Çiçek ne güzel .</center> <br> {! RET {KELİME1 }1 resmi göster !} {! RET en yakın çiçekçi !} <br> <small> <mute> YOL TARİFİ derseniz tarif edebilirim </mute> </small>
::{! IF $fiil ==1 ??{KELİME1 } istiyor gibisin bir fiil olarak algılıyorum bunu
::Ne istiyorsan umarım hayaline ulaşırsın !} !} !} !} !} !} !}
ÖRNEK KULLANIM : (YİYECEK İSMİ ) istiyorum , (ÇİÇEK İSMİ ) istiyorum , (İÇECEK İSMİ ) istiyorum
getddflight
SORU :atatürk havalimanı% ,20 |
SABLON :atatürk havalimanı {HER } ({HER1 })(a |e |ya |ye | ){HERSON }(kalkıyor |uçuyor ){HERSON }
CEVAP :{! RET getddflight 1 ,{HER1 }!}
ÖRNEK KULLANIM :atatürk havalimanından (İL İSMİ ) uçağı kaçta kalkıyor
SORU :sabiha gökçen% ,20 |
SABLON :sabiha gökçen {HER } ({HER1 })(a |e |ya |ye | ){HERSON }(kalkıyor |uçuyor ){HERSON }
CEVAP :{! RET getddflight 999 ,{HER1 }!}
ÖRNEK KULLANIM : sabiha gökçenden (İL İSMİ ) uçağı kaçta kalkıyor
6.1. Katsayılar
CEYD-A cümlenin semantik yapısını analiz ederken cümle yapısının en küçük birimi olan kelime eklerinden, cümleyi oluşturan kelimelere ve cümlenin tamamına doğru bir katsayı mantığıyla algılamaktadır. Bu da algılamasını daha doğal hale getirmektedir.
Komutları oluşturken bu katsayılara sadık kalınırsa daha mantıklı sonuçlar elde edilecektir.
7. Gelişmiş Örnekler
SORU KELİMELERİ: çok ayıp,3|
CEVAP ŞABLONU:
çok öz ür dilerim | kusura bakma |
SORU KELİMELERİ: jandarmayı ara%,10|
KOMUTA YÖNLENDİR:
SORU KELİMELERİ :şimdi oldu,4|
CEVAP ŞABLONU :
SORU KELİMELERİ: kaşar mısın,10|
CEVAP ŞABLONU:
beni s üt ür ünleriyle kar ışt ırma | peynire benzeyen taraf ım m ı var ? |
SORU KELİMELERİ: bugün ne yapa%,10|bugün ne yapma%,10|
CEVAP ŞABLONU:
Şuan da saat {! RET saat !} , ve hava {! RET hava derece !} derece . Sen karar ver $SAH İB İNADI |
SORU ŞABLONU: (.*?)(y|)(i|ı|u|ü) tanıyor musun.*
SORU KELİMELERİ: tanıyor musun,5|
KOMUTA YÖNLENDİR:
SORU KELİMELERİ: günaydın,1|
KOMUTA YÖNLENDİR:
{! SET $waitmessage = G ünayd ın sana da $SAH İB İNADI , sana bir s ürprizim var !} g ünayd ın resmini g öster
SORU ŞABLONU: (.*?)(için |deki |daki |teki |taki )*(nöbetçi eczane).*
SORU KELİMELERİ :nöbetçi eczane%,12|
CEVAP ŞABLONU:
{! SET ilce = {! IF $ 1 == ? ? {! RET hangi semtteyim !} :: $ 1 !} !}
{! SET icerik = {! RET loadurlencode http : //www.hastanebul.com.tr/istanbul-nobetci-eczaneler!}!}
{! RET decodefetchtagsrc $icerik , div [ class ~ = panel . * ] : contains ( {! GET ilce !} ) !}
ÖRNEK KULLANIM: (İLÇE/SEMT İSMİ) için nöbetçi eczane. (Şu an için sadece İstanbul semtleri geçerlidir)
SORU ŞABLONU: (.*)(ne zaman|hangi).*
SORU KELİMELERİ :ne zaman doğdu,15|ne zaman doğmuş%,15|hangi tarihte doğ%,15|hangi yıl doğ%10,10|
CEVAP ŞABLONU:
{! SET data = {! RET loadurlencode https : //tr.wikipedia.org/w/index.php?search={!RET encode $1!}!}!}
$ 1 {! RET decodefetchtagsrc $data , span [ class = bday ] !} tarihinde do ğmu ştur .
ÖRNEK KULLANIM: (ÜNLÜ İSMİ) ne zaman doğdu, hangi tarihte doğdu
SORU ŞABLONU :(.*)masal.*oku.*
SORU KELİMELERİ :masal,10|
KOMUTA YÖNLENDİR:
ÖRNEK KULLANIM: (MASAL İSMİ) masalını oku, kırmızı başlıklı kız masalını oku
SORU KELİMELERİ: nasılsın,7|
KOMUTA YÖNLENDİR:
{! SET $waitmessage = İyiyim . Sana m üzik çalaca ğım şimdi olur mu ? !} rastgele çal
SORU ŞABLONU :.*babamın adı ne
SORU KELİMELERİ :babamın adı ne,15|
CEVAP ŞABLONU:
{! IF $babaminadi == ? ?
{! SET babaminadi = {! RET inputbox Baban ız ın ad ın ı bilmiyorum . Ad ın ı s öyler misin ? !} !}
Baban ız ın ad ı {! GET babaminadi !}
::
Baban ız ın ad ı {! GET babaminadi !}
!}
SORU KELİMELERİ :zar at%,4|
CEVAP ŞABLONU:
{! SET deger = {! RET random 6 !} !}
{! RET substring {! EVAL {! GET deger !} + 1 !} , 0 , 1 !}
ÖRNEK KULLANIM: zar at
SORU ŞABLONU: .*annemin adı(.*)
SORU KELİMELERİ :annemin adı,10|
CEVAP ŞABLONU:
{! IF $ 1 == nedir ? ?
{! IF $anneminadi == ? ? {! SET anneminadi = {! RET inputbox Annenizin ad ın ı bilmiyorum . Ad ın ı s öyler misin ? !} !}
Annenizin ad ı {! GET anneminadi !}
::
Anneniniz ad ı {! GET anneminadi !} !}
::
{! IF $ 1 == ? ? {! GET anneminadi !}
::
{! SET anneminadi = $ 1 !} Annenizin ad ı {! GET anneminadi !} !}
!}
SORU KELİMELERİ :annemi ismiyle ara,15|annemi adıyla ara,15|
KOMUTA YÖNLENDİR:
SORU ŞABLONU: (.*?)(\w*\s*)etme.*
SORU KELİMELERİ :etme,1|
CEVAP ŞABLONU:
$ 2 etmememi istiyorsun . Ba şüst üne . |
SORU ŞABLONU :(.*?)(\w*\s*)değilsin.*
SORU KELİMELERİ :değilsin,4|
CEVAP ŞABLONU:
$ 2 de ğilim diyorsun . Peki . |
SORU KELİMELERİ :masal oku,10|
CEVAP ŞABLONU:
{! SET liste = {! RET loadurlencode http : //www.masaloku.com/kategori/masallar!}!}
{! SET link = {! RET decodetagvalue $liste , div [ class = post-title ] > a : nth-child ( 2 ) , href !} !}
{! SET icerik = {! RET loadurlencode {! GET link !} !} !}
{! RET decodefetchtagsrc $icerik , div [ class = entry ] > p !}
Kaynak : www . masaloku . com |
SORU KELİMELERİ :yerler%,0.9|favori yerleri%,2|yerleri listele,14|
KOMUTA YÖNLENDİR:
ÖRNEK KULLANIM :favori yerlerimi söyle
SORU KELİMELERİ :notlarım%,0.9|notlarımı göster%,6|notlarımı listele%,14|notlarımı söyle%,6|
KOMUTA YÖNLENDİR:
not defteri tipinde listele
ÖRNEK KULLANIM :notlarımı göster
SORU KELİMELERİ :doğum tarih%,0.9|doğum tarihlerini göster%,24|doğum tarihlerini listele%,24|doğum tarihlerini söyle%,24|
KOMUTA YÖNLENDİR:
do ğum tarihi tipinde listele
ÖRNEK KULLANIM: doğum tarihlerini göster
SORU KELİMELERİ :yalnız mısın,4|
CEVAP ŞABLONU:
sen oldu ğun s ürece yaln ız de ğilim | sen vars ın ya $SAH İB İNADI |
SORU ŞABLONU: (.*)(ın|in|un|ün|nun|nin|nın|nün)* (kalorisi kaç.*|kaç kalori.*)
SORU KELİMELERİ: kalorisi kaç,10|kaç kalori,10|
CEVAP ŞABLONU :
{! SET icerik = {! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-meyve-sebze!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-kuruyemis-ve-tohumlar!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-tahil-urunleri!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-sut-urunleri-ve-yumurta!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-et-ve-et-urunleri!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-tavuk-ve-hindi!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-balik-ve-su-urunleri!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-yaglar!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-tatlilar-ve-sekerli-urunler!}
{! RET loadurlencode http : //www.bodytr.com/kalori-cetveli-icecekler!}
!}
{! SET satir = {! RET decodefetchtagsrc $icerik , tr : has ( td : contains ( $ 1 ) ) !} !}
{! RET showtabletds $satir , 1 , 1 !} kilokaloridir . Kaynak : bodytr . com
ÖRNEK KULLANIM :sorulan yiyeceğin 100gr için kalori bilgisini verir. Örnek elma kaç kalori, süt kaç kalori
8. Parametre ve Değişkenler
Komut şablonunda tanımlanan REGEX grupları CEYD diline parametre olarak taşınır. Yani (.*) nedir olarak tanımlanan bir regex ifadesindeki ( ) içindeki grup, 1.parametre olarak $1 şeklinde diyalog veya işlem alanlarında kullanılabilir. Halen en fazla ayn anda 5 parametre CEYD diline aktarılabilir. $1, $2, $3, $4 ve $5 parametreleri ifade eder.
$ işareti tüm değişkenlerin başında geçer . Burada da görüldüğü gibi 1 den 5 e kadar rakamların önünde geçer ise parametreleri gösterir.
SORU :
nedir ,10
SABLON :
(.*) nedir .*
CEVAP :
$1 nedir diye bana sordun bir bakayım . Sanırım {! RET $1 nedir !} demek
8.1. Cihaza Özel Değişkenler
Cihaza özel değişkenler kendi CEYD-A kurulumuzda kullanabileceğiniz, komutlarınız içinde yararlanabileceğiniz değişkenlerdir. Bu değişkenlerin başında diğer değişkenler gibi $ işareti olmalı ve tüm karakterleri küçük harf olmalıdır.
Bu değişkenleri CEYD-A zaman içinde sorarak veya siz ayarlarınızda tanımladığınızda öğrenir.
Bunlar CEYD-A 5.4.8 GA sürümü için şu şekildedir. Bazı değişkenlerin isimleri ilerleyen sürümlerde değişecektir.
$OWNERNAME, $SAHIBINADI
$ASSISTANTNAME, $ASISTANADI
$staLatestSMSPhoneName
$staLatestSMSPhoneNumber
$staLatestSMSPhoneNameBody
$profilepicture
$profilename
$profilegender
$profilebirthday
$profileemail
$OWNERTEAM, $TUTULANTAKIM
$MYLOCATION
$PARKYERILAT
$PARKYERILON
$PARKYERITARIH
$PARKYERISAAT
$oncekihatirlatma
$MATCHDATE, $MACTARIHI
$MATCHHOUR, $MACSAATI
$MATCHNAME
$staLatestPhoneNumber
$staLatestPhoneName
$waitmessage
$lastquestionstring
$questionstring
$lastresultstring
$timerresult
$angryreasonstring
$angry
$sad
$smile
Örnek kullanım:
Merhaba {! GET $SAHIBINADI !} , nasılsın iyi misin ?
Seni en son arayan kişi {! GET $staLatestPhoneName !} olmalı