Question: What are the datatypes available in asterisk server dial plan?

how to check the date type?

Answer: 
Asterisk dial plan language is weakly-typed (has no 'types' as such). All values are strings, but can be treated as numbers in some context (e.g. arithmetic expressions). The only way to check 'the type' is to use a regular expression to check the value.

There are some functions like [HASH](http://www.voip-info.org/wiki/view/Asterisk+func+hash) or [SORT](http://www.voip-info.org/wiki/view/Asterisk+func+sort) which seem to operate on some complex data types, but these are not main features of the language, but rather helpers for specific use cases.
No, in dialplan everything is a string. You can use AGI to check date or compare various things.

What exactly do you need? I'm guessing but maybe this will be useful: [How to include contexts based on time and date](http://www.voip-info.org/wiki/view/Asterisk+tips+openhours)